Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi FMX: Datei kopieren - cross platform (https://www.delphipraxis.net/190463-fmx-datei-kopieren-cross-platform.html)

Sherlock 6. Okt 2016 14:23

FMX: Datei kopieren - cross platform
 
Hi,

ich habe da mal ein unerwartet exotisches Problem: Ich möchte mit meinem FMX-Programm, das unter Win und OSX läuft, eine beliebige vom Anwender ausgewählte Datei in eine Windows-Freigabe kopieren. Das vermutlich problematische daran ist, daß mir nur die IP-Adresse des SMB-Servers bekannt ist, nicht der Name. Denn folgendes geht:
copy c:\temp\datei.txt \\server\freigabe\
nicht aber
copy c:\temp\datei.txt \\<server-ip>\freigabe\
da wird dann SMB-User und Passwort abgefragt. Diese Informationen habe ich, nur weiss ich nicht, wie ich die übermitteln soll.
Ein Versuch per Reverse DNS den Namen mit dieser Methode zu ermitteln schlägt bereits in meiner Entwicklungsumgebung fehl mit der Meldung 'Der DNS-Server meldet einen Fehler im Abfragenamen'.

Gibt es cifs Komponenten, oder andere Möglichkeiten cross-platform eine Datei in eine SMB-Freigabe zu kopieren?

Sherlock

himitsu 6. Okt 2016 16:23

AW: FMX: Datei kopieren - cross platform
 
\\server\freigabe\...
\\username:passwort@server\freigabe\...
Nutzen OS X nicht auch den / statt dem \ , so wie fast alle Unixoide?


Aber verwendet doch besser direkt das SMB-Protokoll, wenn du das nutzen willst

smb://server/freigabe/...
smb://username:passwort@server/freigabe/...

Der schöne Günther 6. Okt 2016 16:25

AW: FMX: Datei kopieren - cross platform
 
Zitat:

Zitat von himitsu (Beitrag 1350031)
smb://server/freigabe/...

smb://username:passwort@server/freigabe/...

Hast du den Code auch mal ausgeführt? :P

Sherlock 7. Okt 2016 07:27

AW: FMX: Datei kopieren - cross platform
 
Ah, das ist natürlich einen Versuch wert. Muss ich gleich mal prüfen, ob ich das ins IOUtils.TFile.Copy packen kann...

Weder in der Windows Konsole noch im File-Explorer oder Browser führt smb://....etc zu etwas anderem als einer Fehlermeldung. Hmmmm, mir kommt es dennoch bekannt vor. Ich recherchiere weiter.

Sherlock

himitsu 7. Okt 2016 10:25

AW: FMX: Datei kopieren - cross platform
 
Nee, hab kein SMB :stupid:, aber Google meinte mehrmals das solle so sein und Google hat immer Recht.
Und ein bissl erinnert es auch an eine FTP/HTTP-Authentification ... wäre ja verständich, wenn man bei der Implementation für SMB einen "ähnlichen" Weg ginge. :angle:

Sherlock 7. Okt 2016 10:46

AW: FMX: Datei kopieren - cross platform
 
Ja, hätte ich auch erwartet. Aber da ich das jetzt nicht mit vertretbarem Aufwand hinbekommen habe, hab ich das mit "erhöhter Benutzerinteraktion" gelöst ;) Sprich: es gibt jetzt einen Dialog mit ein paar zusätzlichen abfragen, und dann tut das ganze wie es soll.

Danke an Euch, dennoch.

Sherlock


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:24 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