German SMB & Windows-10

peternmb

Well-Known Member
Licensed User
Longtime User
Hallo,

kann es sein, dass die SMB-Lib (Version 1.1) unter Windows-10 nicht funktioniert?

Ich versuche per SMB auf einen unter Windows-10 freigegebenen Ordner zuzugreifen.
Bisher hatte ich - zumindest unter Windows-7 - damit nie Probleme.

Der Ordner ist korrekt freigegeben und wird z.B. im ES-FileExplorer angezeigt.
Die Beispiel-App funktioniert unter W7 problemlos, es werden die 5000 txt-Dateien im freigegebenen Verzeichnis gefunden, aber unter W10 kommt eine Fehlermeldung...
 

Attachments

  • SMB-Test.zip
    6 KB · Views: 288

rboeck

Well-Known Member
Licensed User
Longtime User
Bei mir wird die Zeile : 'Dim sf as Samba' rot angezeigt - ich finde nicht die dazugehörige Bibliothek...
 

rboeck

Well-Known Member
Licensed User
Longtime User
Ich habe die SMB, Version 1.1 aktiviert, in dieser ist kein Object namens Samba enthalten, in Zeile 20 gibt es allerdings ein Object namens Sambafile, ist Zeile 18 auch als Sambafile gedacht?
 

peternmb

Well-Known Member
Licensed User
Longtime User
Ich habe die SMB, Version 1.1 aktiviert, in dieser ist kein Object namens Samba enthalten, in Zeile 20 gibt es allerdings ein Object namens Sambafile, ist Zeile 18 auch als Sambafile gedacht?
Bei mir wird die Zeile : 'Dim sf as Samba' rot angezeigt - ich finde nicht die dazugehörige Bibliothek...
ich sehe die Zeile "DIM sf as Samba" überhaupt nirgendwo, wo hast du die her???


hier noch einmal mein Codebeispiel:
B4X:
#Region  Project Attributes
    #ApplicationLabel: SMB Demo
    #VersionCode: 1
    #VersionName:
    'SupportedOrientations possible values: unspecified, landscape or portrait.
    #SupportedOrientations: unspecified
    #CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes
    #FullScreen: False
    #IncludeTitle: True
#End Region

Sub Process_Globals
    Dim SMB1 As SMB
End Sub

Sub Globals
End Sub

Sub Activity_Create(FirstTime As Boolean)
   If FirstTime Then
      SMB1.Initialize("SMB1")
   End If
   SMB1.ListFiles("smb://192.168.178.37/Daten/", "*.txt")
End Sub

Sub Activity_Resume
End Sub

Sub Activity_Pause (UserClosed As Boolean)
End Sub

Sub SMB1_ListCompleted(Url As String, Success As Boolean, Entries() As SMBFile)
  If Not(Success) Then
    Msgbox("ListFiles failed : " & LastException,"Problem")
  Else
    Msgbox("komplett, es sind " & Entries.Length & " txt-Dateien","alles OK")
  End If
End Sub
 

Knoppi

Active Member
Licensed User
Longtime User
Hallo, schau doch mal nach ob du 'Kennwortgeschütztes Freigeben' aktiviert hast (Systemsteuerung\Netzwerk und Internet\Netzwerk- und Freigabecenter\Erweiterte Freigabeeinstellungen)
wenn ja dann musst du einen Beuntzer mit Passwort bei smb übergeben.
B4X:
SMB1.Initialize("SMB1")
SMB1.SetCredentials( "Username", "Password", "Domain")
 

peternmb

Well-Known Member
Licensed User
Longtime User
Hallo, schau doch mal nach ob du 'Kennwortgeschütztes Freigeben' aktiviert hast
sind mit Sicherheit deaktiviert, z.B. unter ES-Explorer funktioniert es auch, bei diversen anderen Apps die SMB nutzen funktioniert es allerdings ebenfalls nicht.
Ich habe unter es Android-6 und Android-7 getestet an mehreren Windows-10 Geräten, ich vermute es liegt an der JCIFS API

Ich werde es einmal mit kennwortgeschützten Freigaben probieren, ist zwar nicht die Ideallösung aber im Moment wäre ich froh, wenn es überhaupt unter Windows-10 funktioniert...
 

Knoppi

Active Member
Licensed User
Longtime User
Ich hab jetzt mal bei mir getestet.
wenn ich 'kennwortgeschützten Freigaben' deaktiviere kann ich mit App-smb und ES-Explorer ohne benutzter darauf zugreifen.
wenn ich 'kennwortgeschützten Freigaben' aktiviere kann ich NICHT mit App-smb ohne benutzter darauf zugreifen aber mit dem oben erstellten Server-Link in ES-Explorer schon
wenn ich jetzt aber Versuche mit ES-Explorer einen neuen Server-Link zu erstellen geht das nicht ohne Benuzter und Kennwort

Das ist schon ein sehr merkwürdiges Verhalten. Ob ES-Explorer einen trick nutz oder Win 10 ne macke hat oder es an der Lib liegt kann ich nicht sagen.
 

peternmb

Well-Known Member
Licensed User
Longtime User
Ob ES-Explorer einen trick nutz oder Win 10 ne macke hat oder es an der Lib liegt kann ich nicht sagen.
Ich habe jetzt auch alles probiert was mir dazu einfällt, z.B.
- mit/ohne kennwortgeschützten Freigaben
- mit Android6/Android7-Gerät
- mit verschiedenen Windows-10-Geräten
eine Verbindung habe ich dabei mit B4A nirgendwo bekommen.
Dass es prinzipiell geht zeigt der ESFileExplorer - da funktioniert es ja.

Es würde mich interessieren ob jemand irgendwie den Netzwerk-Zugriff auf einen Windows-10-Rechner realisieren konnte.

Danke.

PS.: unter Windows-7 und Windows-8.1 funktioniert es absolut problemlos.
 
Last edited:

Knoppi

Active Member
Licensed User
Longtime User
Ich habe alles mit win 10 getestet. (siehe post #8)
bei mir funktioniert dein code (mit meinen Werten) ohne probleme

kann es sein das deine firewall den zugang blockiert?
 

peternmb

Well-Known Member
Licensed User
Longtime User
Ich habe alles mit win 10 getestet. (siehe post #8)
bei mir funktioniert dein code (mit meinen Werten) ohne probleme

kann es sein das deine firewall den zugang blockiert?

da habe ich deinen Beitrag wohl nicht richtig gelesen.
Bei mir funktioniert es auch mit deaktivierter Firewall/Antivirenprogramm nicht.
Ich habe keine Ahnung was ich jetzt noch machen kann...
 

Knoppi

Active Member
Licensed User
Longtime User
Das einzige was mir noch einfällt ist das du mal nachschaust ob die freigabeberechtigung auf 'jeder' steht
 

peternmb

Well-Known Member
Licensed User
Longtime User
Das einzige was mir noch einfällt ist das du mal nachschaust ob die freigabeberechtigung auf 'jeder' steht
da stimmt alles, ein Zugriff mit ESFileExplorer ist ja auch problemlos möglich.

Ich nutze diese Funktion in meinen Apps schon seit Jahren - allerdings bisher nur unter W7 und W8.1, und da gab es noch nie Probleme.
 

rboeck

Well-Known Member
Licensed User
Longtime User
nach längeren Tests habe ich eben Zugriff auf zwei Windows 10 Geräte geschafft, allerdings nur mit dem Setzen von Benutzernamen und Passwort.
Ein Tipp, der vielleicht hilft, da in Windows 10 mit den Online Konten m. W. der sichtbare Benutzername nicht ident sein muss mit dem realen Anmeldenamen:
In der Eingabeaufforderung "Control userpasswords2" eingeben, in diesem Dialog sind die verwendbaren Realnamen sichtbar.
Konnte mich heute auf zwei Windows 10 Geräten erfolgreich verbinden und bspw. alle *.bat Dateien anzeigen.
 

peternmb

Well-Known Member
Licensed User
Longtime User
Konnte mich heute auf zwei Windows 10 Geräten erfolgreich verbinden und bspw. alle *.bat Dateien anzeigen
Ich habe dafür zum Testen bereits extra den Benutzer "Android" angelegt, hat mich aber nicht weitergebracht.
Hast du die kennwortgeschützten Freigaben deaktiviert oder nicht?
Wie hast du den Beispielcode verändert (Benutzname usw.) damit es funktioniert hat?

Ich habe jetzt noch den Zugriff auf die Win10-Freigaben mit einem älteren Windows7-Laptop getestet, hat auch damit ohne Benutzer und Kennwort funktioniert nachdem die kennwortgeschützten Freigaben auf dem Win10-Rechner deaktiviert wurden.
Seltsamerweise wurde allerdings nach Benutzer und Passwort gefragt, mit einer beliebigen Eingabe (Benutzer x Passwort x) wurde der Zugriff gewährt...
 

rboeck

Well-Known Member
Licensed User
Longtime User
Interessanterweise hat auch bei mir der neuangelegte Benutzer nicht funktioniert, aber der Benutzer, der als Online Konto eingerichtet wurde, funktioniert jetzt.
Nach dem SMB1.Initalize werden mit .SetCredentials("[email protected]","passwordala123456",""), die Domain habe ich mit "" leer gelassen.
Bei ListFiles habe ich über die IP Adresse wie im Beispiel gearbeitet; bei einer Windows 10 Maschine habe ich bemerkt, dass sie über WLAN nicht "pingbar" war, über Kabel aber schon... Die zweite Windows 10 Maschine habe ich aber auch über WLAN erreicht.
Ich verwende bei allen Freigaben den Kennwortschutz, da ich bei vielen Computern das Gefühl / Erfahrung habe, dass ohne Kennwortschutz manche Freigaben nicht problemlos funktionieren.
Eben kurz getestet: Die SMB Lib funktioniert auch unter B4J; damit ist das Austesten deutlich schneller.
 
Last edited:

Knoppi

Active Member
Licensed User
Longtime User
vielleicht funktioniert es bei mir ohne probleme weil ich eine win 10 offline installation (ohne microsoft konto) gemacht habe
und ich daher nicht das durcheinader mit online Benutzer und realer Benutzer habe

prinzipiell kann ich immer nur kennwort geschützte freigaben (auch im privaten bereich) empfehlen
 

peternmb

Well-Known Member
Licensed User
Longtime User
Danke für die Tests und Hinweise,

funktioniert bei mir leider auch nicht, weder mit online- noch mit lokalem Konto.
Auch mit kennwortgeschützten Freigaben klappt es nicht - ich mache Schluss für heute...
 

peternmb

Well-Known Member
Licensed User
Longtime User
welche fehlermelung bekommst du?
win / b4a poste die mal vielleicht kommen wir damit weiter
Das bekomme ich beim Versuch mit kennwortgeschützten Freigaben und einem lokalen Benutzer:
upload_2017-12-25_11-37-43.png
 
Top