I need to find photos on external devices like cameras and mobiles connected as USB pendrive. As I don't want to traverse all disks, I thought of looking for specific folders under root or deeper, e.g. DCIM for cameras and start traverse from there.
For cameras the directory structure is specified in the Design rule for Camera File system (DCF) as always using a DCIM directory at root.
But for different mobile brands I did not find any rules. So can you please help me out and post the directory where your photos are stored in when you're mobile is connected as USB pendrive along with yout mobiles brand?
I'm looking for all major brands, like Nokia, LG, Samsung, Sony Erricson, etc. (IPhone connects as camera under 'camera and scanners', so I need to TWAIN it, but that works...)
Thanks a lot!
Lots of ways to get to the images.
Device specific - Needs lots of hardware to test with. An easily unpalatable app could handle getting new devices supported.
Check for known vendor/device id's on USB bus with related info on how to get to data. Some may have proprietary methods for extracting images.
Drive based photos - traverse entire drive makes it future proof, however speed is bad.
For each removable drive in system.
Check for existence of "known" base folders
If found, traverse from base folder
Else, traverse entire drive
TWAIN based photos - not a clue with these
Lookup iphone, would this be for capturing new photos, or actually viewing previously captured photos
My Samsung Omnia gives me the default
DCIM
directory on the root of the assigned drive.
Note that I have to specifically enable USB file transfer on the phone, otherwise all files need to come through the Windows Mobile Device folder.
I know this is a hack but you could try something like this and then record (in a DB) the make/model/handset stats in for future.
in Linux (on the command line) (This is an example)
ls /*/*.jpg
This would look under the first level of directories for any file with a .jpg extension.
ls /*/*/*.jpg
For the second directory
Again this is just a hack and really not advised for production, but for testing to get a working path for a device this might come in handy.
Related
My research lab has a lab Google account to which we are expected to save/upload all of our files. To avoid the messy challenge of maintaining local files that can be read by RStudio as well as Cloud versions on the shared Google Drive account, I have recently began using Drive for Desktop to stream files from the Drive to my desktop to open in RStudio. (More specifically, I share my folder in the lab Drive with my personal Drive which in turn is synced/streamed to my Mac desktop.)
However, I believe this creates conflicts when Drive tries to sync/access files while RStudio is also updating those files (see: zero, one, two, three, four, five, six, seven). I do get a pop-up every so often that I have to close, but that is manageable. A bigger problem for now is that I have noticed that the Drive is now filled with random empty folders (see screenshot below). These folders are located within .Rproj.user. Does anyone know how to prevent these random folders from being generated when I use RStudio in this fashion? It is annoying because they show up in the Google Drive 'home page' and 'Recents' for everyone who accesses the shared Drive.
The other posts linked above describe the need to exclude some file types from sync in order to prevent conflicts, but the directions were for the old Google Drive Back Up and Sync system. I cannot find these settings in the new Drive for Desktop system, and I do not know if this would solve the random folder generation problem.
Has anyone encountered this problem before, know what causes it, or how to fix it?
Many thanks in advance.
I have been particularly told to use iframe for a site with which I need to download some images and display them in the application. So, I just wanted to know can we set a default download location for the content to be downloaded so that I can fetch the data from that particular folder directly.
Mobile operating systems don't have an explicit filesystem (that does not mean there is no filesystem underneath the application, only that those OSes try to hide things like a filesystem from the typical application). On top of that, you are running inside a "webview" which is, essentially, an embedded browser. This means your code is running inside a runtime that does not have the concept of a filesystem, which is running on an OS that wants to hide the filesystem from you.
You can explore the filesystem, but if you want the webview to do all of this automagically for you you're going to have to live with the typical caching of files that browsers and webviews do. If that does not work for you, you might have to perform some explicit AJAX calls to get the files you want and store them in an explicit location. To read and write to the filesystem you can use the Cordova File plugin: https://github.com/apache/cordova-plugin-file
Ultimately, what you decide to do depends on how you want to handle those images, so there is no single "right" answer to this question.
I wanna get your opinoun for my situation.My customer has excel files which is edited daily by herself.My customer wanna reach and edit from all devices like tablet pc,laptop pc or mobile phone inside her company .(it is local network)
One solution I can find is install a excel server using the share point.in that way I am planing to reach her excel file via browser from all devices and edited.
but I am not famillier with the share point.and no idea how make an excel page available on the local network.
My question is what should be the best solition on this issue.is the using share point is only solution.?whats your opinoun on this issue.
If Internet is also available on all devices, you can go for a ready made solution of Google Drive, It will sync automatically.. But the Company IT policy could be a Constraint
We are switching devices, and the flash disks are name differently, but our software's configuration files are written with that directory hardcoded (not like we would ever change vendors, right?)
So...is it possible to create a shortcut to the new flash disk with the name of the old one such that I don't have to change all the paths?
Thanks in advance for your help.
Unfortunately, no (well not easily). Shortcuts files in CE are very simple text files of the folowing format:
25#\program files\myapp.exe
Where the number at the start is the number of characters in the path following, including the hash. You can change the target by changing the path text, but there's no easy way to "virtually map" one location to another.
Now there is a way that you could achieve remapping, but it requires that you write, deploy and install a file-system filter (FSF). An FSF could "forward" requests from one location to another. However, it seems (to me anyway) that you're going to have to configure that FSF with the device-specific path, and it's probably easier to just change your shortcuts.
If it were my problem to solve, I'd likely create an app that reads the registry for the storage driver profile to determine its name for the card, then modify the shortcuts with that text.
I have a Flex app that does a a fair amount of network traffic, it uses ExternalInterface to make some javascript calls (for SCORM), it loads XML files, images, video, audio and it has a series of modules that it could be loading at some point...
So the problem is - we now have a requirement where the user needs to run this content locally on a machine that is not connected to the internet (which means they can't connect to Adobe's site to change their security settings.) As you can imagine, when the user doubles clicks on the html page to launch this thing, they are greeted with a security warning that the swf is trying to communicate with another domain other than the one it's in. We can't wrap it in an exe or an AIR app so I unless there is some way to tweak some obscure security settings we may be hosed. Any idea's?
What you are trying to do is exactly the problem solved by AIR. You should really give it a try, it's not that hard to pick up. If you really really can't use AIR (you didn't specify why, so I assume it's just because you don't want to have to learn a new system), then modifying the security config file will solve the problem.
Basically what you need to do is create a 'trust' file in the "Global FlashPlayerTrust" directory. This can be done by your installer (which installs all the javascript, SWF, html, etc files onto the local machine). You should create the directory if it does not exist. The directory for each OS is:
Windows - %WINDIR%\System32\Macromed\Flash\FlashPlayerTrust
Mac - /Library/Application Support/Macromedia/FlashPlayerTrust
Linux - /etc/adobe/FlashPlayerTrust
Next, you need to create the trust file. You can name it anything, so pick a unique name that would be unlikely to conflict with others. Something like CompanyName.cfg. It's a text file, with one path per line. You can trust either one SWF at a time, or an entire directory. Example:
C:\Program Files\MyCompany\CoolApp
C:\Program Files\MyCompany\OtherApp\Main.swf
To test that it's working, inside your flash movie you can check System.security.sandboxType (ActionScript 1 or 2), or Security.sandboxType (ActionScript 3). It should have the value of "localTrusted"
I hesitate to say "you can't do it", but in my experience, there's no way to do what you're describing. Anyone, if I'm wrong, I'd love to know the trick.
Sorry that I haven't actually tried this to see if it works or not ... but ...
Page 20 (and/or 26) of this document may be of help. The document is referenced here. In a nutshell it describes directories which contain cfg files which in turn contain lists of locations on disk which should be regarded as trusted. An installer for the application would then be responsible for creating appropriate .cfg files in the desired location (global or for the installing user).
The short answer is that if your swf is compiled with use-network to true, it isn't going to work.
Is it possible to compile a version with use-network to false? Or is it running on an Intranet that is closed off from the Internet and still communicating with the LMS?
It is possible. Please chek that the swfs you are calling from the main swf have the "Access local files only" property enabled or not.
Did you try to specify the authorized domain with:
System.security.allowDomain("www.yourdomain.com");