Solved

MTP (Media transfer protocol) in Delphi

Posted on 2014-03-19
13
510 Views
Last Modified: 2014-11-23
For more information see this question

All is working fine, except I now find one thing is missing - I need to be able to  create folders on the device.

So I need to the code that would do this, or preferably just update the demo project to include an example (via another button)
mtp10.zip
0
Comment
Question by:Clyde24
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 5
13 Comments
 
LVL 27

Expert Comment

by:Sinisa Vuk
ID: 39940824
So... added create folder functionality and fix some stuff.
this is done as recursive function (again) - so you can add full path with few sub-folders which doesn't exists at all.

It is very similar to copy file to specific folder on device....
mtp11.zip
0
 

Author Comment

by:Clyde24
ID: 39941062
Unfortunately the new code in V11 won't compile for me (V10 is still OK).

error1
error2error2.png
0
 
LVL 27

Expert Comment

by:Sinisa Vuk
ID: 39941111
And if you declare function like
function TForm12.GetDeviceId: WideString;
...

Open in new window

?
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:Clyde24
ID: 39941415
OK, it compiles but I can't create any folders. For example in the "create spec. folder" box I have:

s10001\Pictures\test

But I get the error "cannot create destination folder"

attached is the log
log.txt
0
 
LVL 27

Accepted Solution

by:
Sinisa Vuk earned 500 total points
ID: 39942220
Try this new one. Fixed few things... and Pos compile error too.
mtp12.zip
0
 

Author Comment

by:Clyde24
ID: 39943980
Strange - it works when creating a folder in the root "s10001", but not anywhere deeper

For example entering the following works:

s10001\test

However, the following does not:

s10001\pictures\test

Log is attached
log.txt
0
 
LVL 27

Expert Comment

by:Sinisa Vuk
ID: 39944016
Strange indeed. Works on my android phone, sd card, usb ...
But I have exposed drive letter, folders/files are with a real names....
Will look....
0
 

Author Comment

by:Clyde24
ID: 39944691
... also another issue I noticed - I Need to know the exact name of the device as shown in Windows explorer. For example, I have a "Garmin Oregon 650" GPSr unit connected:

gpsr
However, when I interrogate the mtp_demo log I can't see this exact reference (the 650 is missing, which is very important as that is the model number):

FriendlyName len=7
FriendlyName=GARMIN
DeviceDescription len=13
DeviceDescription=Oregon Flash

Open in new window


How can we get the exact name as shown by Windows explorer
0
 
LVL 27

Expert Comment

by:Sinisa Vuk
ID: 39945155
Can you post log for this Garmin issue....
using this newer example...
mtp13.zip
0
 

Author Comment

by:Clyde24
ID: 39946653
log attached
log.txt
0
 
LVL 100

Expert Comment

by:mlmcc
ID: 40461049
I've requested that this question be deleted for the following reason:

The question has either no comments or not enough useful information to be called an "answer".
0
 

Author Closing Comment

by:Clyde24
ID: 40461050
I changed the code to just delete a single folder and it worked
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

740 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question