it-swarm.com.de

Wie greife ich in Windows über die Befehlszeile auf MTP-Geräte zu?

Die meisten MTP-Geräte ( Media Transfer Protocol ) werden im Windows-Datei-Explorer unter ihrem Gerätenamen oder einer GUID angezeigt, ihnen ist jedoch kein Laufwerksbuchstabe zugewiesen .

Wie kann ich über die Befehlszeile auf die Dateien auf solchen Geräten zugreifen? Verwenden Sie entweder cmd.exe oder PowerShell.

62
Peter Hahndorf

Leider unterscheiden sich APIs, die durch MTP verfügbar gemacht werden, stark von normalen Dateisystem-APIs. Daher ist es nicht möglich, ein MTP-Gerät als Lese-/Schreib- Dateisystem verfügbar zu machen. Der Hauptgrund:

Wikipedia sagt :

Weder der MTP- noch der PTP-Standard erlauben eine direkte Änderung von Objekten. Stattdessen müssen geänderte Objekte vollständig neu hochgeladen werden, was bei großen Objekten sehr lange dauern kann. Bei PTP/MTP muss die Dateigröße in der Eröffnungsphase bekannt sein.

Ihr allgemeines Dateikopierprogramm öffnet lediglich eine Quell- und eine Zieldatei und kopiert Daten in Stücken von der Quelldatei in das Ziel. Dies funktioniert mit MTP nicht, da Sie MTP-Sonderfunktionen verwenden müssen und generische Dateisystem-Primitive (Lesen, Suchen, Schreiben) nicht verfügbar sind.

Es gibt auch andere Einschränkungen. Beispielsweise ist die Anzahl der Dateien, die gleichzeitig auf einem MTP-Gerät gelesen oder geschrieben werden können, stark begrenzt. Das Gerät verhält sich einfach nicht wie ein Dateisystem.

Ich nehme an, dass schreibgeschützter Dateisystemtreiber für ein MTP-Gerät möglich sein könnte, aber aufgrund der oben beschriebenen Probleme wird es von sehr geringem Nutzen sein, sodass sich niemand die Mühe machte, ihn zu erstellen.

26
haimg

Es gibt ein proprietäres (aber immer noch nettes) Programm: MTP Drive ( http://www.mtpdrive.com/index.html ), mit dem Sie dies tun können MTP-Geräte als Laufwerke in Windows "mounten". Mit einigen vernünftigen Einschränkungen macht es den tollen Job!

2
barbalion

Möglicherweise können Sie etwas mit dem MTPMon des MTP-Portierungskits zusammenpflastern.

Alternativ kann PowerShellCOM Objekte erstellen und deren Methoden aufrufen. Daher können Sie möglicherweise die APIs verwenden, die Windows Explorer verwendet (z. B. GetDeviceInfo () und GetObjectInfo ()).

1
Arnshea