0

When I plug in my Nikon P520 camera to the usb port, the camera appears in the shell as ThisPc\P520\Removable storage\DCIM\101NIKON. There is no drive letter.

With Delphi XE4, I have tried various components as well as SelectDirectory to retrieve the folder path, but the path is always blank. Windows 8.1 explorer allows viewing the pictures in the path mentioned above and DevelopersExpress cxShellListView also displays the pictures.

TMSFolderDialog, cxShellBrowserDialog, and FileCtrl.SelectDirectory('Select Folder', 'Desktop', AFolder) all return an empty path.

Is there a way to get a usable path as a string from the shell for this shell path so I can load the pictures into other components that require a string path?

Bill
  • 2,993
  • 5
  • 37
  • 71
  • 1
    See [`Browse for folder can't see camera device`](http://stackoverflow.com/a/3011919/576719). – LU RD Jan 22 '14 at 16:43
  • Unfortunately, the Nikon does not have any storage device menu option so it looks like I am out of luck. – Bill Jan 22 '14 at 16:58
  • 1
    Your device probably employs Windows MEdia Player feature called MTP: http://en.wikipedia.org/wiki/Media_Transfer_Protocol Dunno if Media Player has an API for accessing it though, so maybe Shell API is the only way to read those – Arioch 'The Jan 22 '14 at 17:20

1 Answers1

0

Is there a way to get a usable path as a string?

No. This object is not a file system object. You need to access it using the shell API.

David Heffernan
  • 601,492
  • 42
  • 1,072
  • 1,490