Seite 1 von 1

Python smbclient filedialog

Verfasst: Montag 12. September 2022, 08:57
von PotterParsel
Hallo zusammen,

ich habe auf meinen Fileserver Bilder, welche ich gerne über ein filedialog auswählen würde.

Leider öffnet der filedialog den Pfad / anstelle des Pfads \Server/Bilder.

Kann mir jemand bei meinem Problem helfen?

Code: Alles auswählen

file = smbclient.listdir(fr"\\Server/",username=username,password=password)
root = Tk()
root.filename =  filedialog.askopenfilename(initialdir = file,title = "Select file",filetypes = (("jpeg files","*.jpg"),("all files","*.*")))
print (root.filename)

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 08:58
von __deets__
Das fr gehört vor das Anführungszeichen.

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 09:00
von PotterParsel
__deets__ hat geschrieben: Montag 12. September 2022, 08:58 Das fr gehört vor das Anführungszeichen.
Danke für den Hinweis. Das habe ich gleich geändert. Leider ist das Problem immer noch da :(

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 09:07
von __deets__
Nochmal genauer hingeschaut. Das ist Quatsch programmiert. Nur weil smbclient es erlaubt, eine Datei auf einem SMB Server abzugreifen, ist das Ergebnis nicht ein Objekt, das dann von fliedialog verstanden wird. Der kann nur lokale Dateien benutzen. So gehts halt einfach nicht.

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 09:20
von PotterParsel
__deets__ hat geschrieben: Montag 12. September 2022, 09:07 Nochmal genauer hingeschaut. Das ist Quatsch programmiert. Nur weil smbclient es erlaubt, eine Datei auf einem SMB Server abzugreifen, ist das Ergebnis nicht ein Objekt, das dann von fliedialog verstanden wird. Der kann nur lokale Dateien benutzen. So gehts halt einfach nicht.
Heißt es ist nicht möglich den fliedialog mit einer SMB Verbindung zu nutzen?

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 09:41
von __deets__
Das heißt es. Außer du hast diese Verbindung im System getätigt, also die Freigabe irgendwie lokal verfügbar gemacht. Als Netzlaufwerk oder so.

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 10:13
von Sirius3
Du mußt den Dialog komplett selbst programmieren, und zwar so, dass er mit smbclient zusammenarbeiten kann.

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 10:13
von PotterParsel
__deets__ hat geschrieben: Montag 12. September 2022, 09:41 Das heißt es. Außer du hast diese Verbindung im System getätigt, also die Freigabe irgendwie lokal verfügbar gemacht. Als Netzlaufwerk oder so.
Ich habe eine Freigabe auf meinen Raspberry Pi.

Re: Python smbclient filedialog

Verfasst: Montag 12. September 2022, 10:22
von __deets__
Es geht darum, dass diese Freigabe auf dem Zielsystem gemountet ist. Zb als Laufwerk. Dann ist es aber auch überflüssig, smbclient zu benutzen. Wenn der benutzt werden soll, musst du Sirius3 Hinweis folgen.