AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TOpenDialog - Datei vom Handy kopieren

Offene Frage von "r_amse_s"
Ein Thema von gmc616 · begonnen am 13. Jan 2012 · letzter Beitrag vom 26. Mai 2012
Antwort Antwort
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#1

TOpenDialog - Datei vom Handy kopieren

  Alt 13. Jan 2012, 11:08
Gesundes Neues!

Ich habe Windows 7, Delphi 2009 und ein auf Android laufenden Handy (Smartphone, PDA, was auch immer).
Schießt man das Handy per USB an den Windows-PC, kann man wählen ob diese Verbindung als Massenspeicherübertragung oder als Medienübertragen funktionieren soll.
Wählt man Massenspeicherübertragung bekommt das Handy einen Laufwerksbuchstaben und alles ist gut.
Wählt man stattdessen Medienübertragung bekommt das Handy KEINEN Laufwerkbuchstaben, wird aber dennoch im Explorer sowie im TOpenDialog als "Tragbares Gerät" geführt.

Im TOpenDialog kann ich nun auf die SD-Card zugreifen durch lustig durch die Verzeichnisse wechseln. Das Tragbare Gerät repräsentiert sich (für den DAU) als ganz normales Laufwerk.
Möchte man eine Datei öffnen, in meinem Fall kopieren, funktioniert das Ganze nicht mehr, da die gewählte Datei im TOpenDialog.FileName nur den Namen, nicht aber das komplette Verzeichnis enthält. Wie auch, es gibt ja noch nicht mal einen Laufwerksbuchstaben ^^

Kann man die Datei trotzdem irgendwie öffnen bzw. kopieren?

Oder gibt es eine Möglichkeit "Tragbare Geräte" im TOpenDialog auszublenden? In den Optionen des Dialogs habe ich bis jetzt nichts gefunden.

Für eure Hilfe vielen Dank.
  Mit Zitat antworten Zitat
Benutzerbild von SimplySimon
SimplySimon

Registriert seit: 7. Jun 2011
Ort: NRW
38 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TOpenDialog - Datei vom Handy kopieren

  Alt 16. Jan 2012, 23:54
Ich denke dass das bei der Medienübertragung nicht funktionieren wird. Um Dateien kopieren zu können muss das Gerät eben als Massenspeicher konfiguriert werden.
Andere Lösungen habe ich (nach probieren) auch nicht herausgefunden. Es funktioniert tatsächlich nicht...
Aber ist es so ein großes Problem das Gerät als Massenspeicher bereit zu stellen?
Simon
Homepage: SimplySimonProductions
Projekte: ResCreator
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: TOpenDialog - Datei vom Handy kopieren

  Alt 17. Jan 2012, 09:26
Danke für deine Mühe.

Naja, für mich ist es kein Problem den Massenspeichermodus zu aktivieren, aber die Anwendung sollen auch Leute einsetzten können, die mit Rechner nicht so gut umgehen können, wie ich/wir. DAUs eben.

Zusätzlich soll zu besseren Handhabung auf dem PC eine RemoteControl-Anwendung den PDA steuern können.
Ich weiß nicht, ob das im Massenspeichermodus funktioniert.

Windows bietet im KontextMenü des Explorers beim Zugriff auf die SD-Card im Medienübertragungsmodus die Möglichkeit Dateien zu kopieren. Es wird sogar beim Doppelklick auf z.B. eine MP3-Datei, die Datei vorher (ich nehme an in ein temporäres Verzeichnis) kopiert und anschließend geöffnet.
Irgendwie muß man das doch auch per Code ansprechen können. Hab bloß keine Ahnung wo ich im MSDN anfangen soll zu suchen.
  Mit Zitat antworten Zitat
einbeliebigername

Registriert seit: 24. Aug 2004
140 Beiträge
 
Delphi XE8 Professional
 
#4

AW: TOpenDialog - Datei vom Handy kopieren

  Alt 17. Jan 2012, 11:08
Hallo,

Zusätzlich soll zu besseren Handhabung auf dem PC eine RemoteControl-Anwendung den PDA steuern können.
Ich weiß nicht, ob das im Massenspeichermodus funktioniert.
Ich habe auch ein Handy wo man beim Verbinden mit dem Computer zwischen zwei Arten wählen kann. Entweder Zugriff auf den Massenspeicher oder die Restlichen Funktionen nutzen. Ich habe gerade festgestellt das ich mit dem Explorer im nicht Massenspeicher-Modus auch auf den Massenspeicher zugreifen kann. Bei mir taucht das Handy mit seinem Namen unter Computer neben den Laufwerken auf. Wenn ich mir im Explorer den Pfad anzeigen lasse bekomme ich aber nur "Bluetooth-Umgebung\Memory Stick". Im Öffnen-Dialog vom Nodepad kann ich aber nicht auf das Handy zugreifen. Somit kann ich dir nicht direkt weiterhelfen.

Windows bietet im KontextMenü des Explorers beim Zugriff auf die SD-Card im Medienübertragungsmodus die Möglichkeit Dateien zu kopieren. Es wird sogar beim Doppelklick auf z.B. eine MP3-Datei, die Datei vorher (ich nehme an in ein temporäres Verzeichnis) kopiert und anschließend geöffnet.
Irgendwie muß man das doch auch per Code ansprechen können. Hab bloß keine Ahnung wo ich im MSDN anfangen soll zu suchen.
Aber einen Tipp kann ich dir noch geben. Im Hintergrund vom Windows-Dateisystem gibt es noch "item identifier". Zu einigen Orten wie z.B. der Desktop gibt es auch noch Konstanten wie CSIDL_DESKTOP (ShlObj.pas). Ein Einstig in diese Materie könnte eine Implementierung einer BrowseForFolderDialog-Komponente sein (z.B. TJvBrowseForFolderDialog). Dort wird z.B. mittels SHGetSpecialFolderLocation anhand einer CSIDL-Konstante eine "item identifier list" ermittelt. Interessant wäre was der Öffnen-Dialog vom Nodepad oder Media Player und der BrowseForFolderDialog bei deinem Handy machen. Zu mindestens der BrowseForFolderDialog zeigt bei mir unter Computer ein zusätzlicher Eintrag ohne Namen und mit Blatt-Icon an. Ich kann diesen da aber nicht öffnen. Im Ordner-Edit erscheint nur zwei GUID's, jeweils mit :: davor und durch \ getrennt.

Ach noch einen Tipp: Schau doch mal was der Total Commander bei deinem Handy macht. Wenn du mit dem im nicht Massenspeicher-Modus von deinem Handy Dateien kopieren kannst, hast du eine echte Chance das in deiner Anwendung hinzubekommen. Ansonsten wird es schwer. Ich denke es ist aber nicht unmöglich. Der Explorer ist ja auch nur ein Programm was auf die Windows-API zugreift.

Einbeliebigername.
  Mit Zitat antworten Zitat
r_amse_s

Registriert seit: 31. Jul 2004
109 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: TOpenDialog - Datei vom Handy kopieren

  Alt 26. Mai 2012, 21:34
ich hätte auch Interesse an das Thema!

gibt es vielleicht eine Lösung?

TotalCommander erkennt das Gerät auch nicht wenn keine Laufwerkbuchstabe zugewiesen wird...wäre sehr dankbar für eine Lösung
liebe Grüße
ramsi
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz