Solved

MTP (Media transfer protocol) in Delphi

Posted on 2014-03-19
13
558 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
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 

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 101

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

On Demand Webinar: Networking for the Cloud Era

Ready to improve network connectivity? Watch this webinar to learn how SD-WANs and a one-click instant connect tool can boost provisions, deployment, and management of your cloud connection.

Question has a verified solution.

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

Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
Suggested Courses
Course of the Month5 days, 13 hours left to enroll

626 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