![]() |
Zugriff auf Pfad im Netzwerk mit Benutzername und Passwort?
Hallo,
kann man irgendwie die Befehle FindFirst, DeleteFile, RemoveDirectory und SHFileOperation mit einem Netzwerkpfad, für den ein Login benötigt wird, verwenden? Vielleicht wie bei den FTP URLs mit Benutzername und Passwort in der URL? Die einzige Lösung, welche mir bis eingefallen ist (und die ich auch schon verwendet habe), ist die Verwendung eines temporären Netzlaufwerkes. Diesen "Umweg" würde ich mir aber gern ersparen, wenn's eine einfachere Lösung geben würde. Habt ihr noch eine Idee? Viele Grüße [EDIT]Es reicht ja eine Anmeldung an dem Rechner mit dem Benutzer/Password, das merkt sich Windows ja dann. Also kann man sich irgendwie bei einem Computer im LAN "bekannt" machen? |
Re: Zugriff auf Pfad im Netzwerk mit Benutzername und Passwo
Gibt es keinen Weg die oben genannten Befehle in Verbindung mit einen Benutzernamen/Kennwort (sind bekannt) zu verwenden?
|
Re: Zugriff auf Pfad im Netzwerk mit Benutzername und Passwo
Damit:
Delphi-Quellcode:
Autentifiziere ich mich mit meinem Usermanager an einem anderen PC.
uses
Windows; function ConnectToNetworkDriveW(LocalName: WideString; RemoteName: wideString; Username: WideString; Password: WideString; RestoreAtLogon: boolean): DWORD; function DisconnectNetworkDrivew(Name: WideString): DWORD; implementation function ConnectToNetworkDriveW(LocalName: WideString; RemoteName: wideString; Username: WideString; Password: WideString; RestoreAtLogon: boolean): DWORD; var NetResource : TNetResourceW; dwFlags : DWORD; begin dwFlags := 0; ZeroMemory(@NetResource, sizeof(TNetResource)); with NetResource do begin dwType := RESOURCETYPE_ANY; lpLocalName := PWideChar(LocalName); lpRemoteName := PwideChar(RemoteName); lpProvider := nil; end; if (RestoreAtLogon) then dwFlags := dwFlags or CONNECT_UPDATE_PROFILE; Result := WNetAddConnection2W(NetResource, PWideChar(Password), PWideChar(Username), dwFlags); end; function DisconnectNetworkDrivew(Name: WideString): DWORD; begin result := WNetCancelConnection2W(PWideChar(Name), CONNECT_UPDATE_PROFILE, True); end; |
Re: Zugriff auf Pfad im Netzwerk mit Benutzername und Passwo
Also doch über ein Netzlaufwerk/Freigabe. Oder nutzt du diese Funktionen irgendwie anders? Wollte eigentlich das temporäre Einbinden eines Netzlaufwerkes umgehen.
|
Re: Zugriff auf Pfad im Netzwerk mit Benutzername und Passwo
Da wird nichts temporär eingebunden. Du gibst einfach die Admnistrative Freigabe an: \\hal9000\IPC$
|
Re: Zugriff auf Pfad im Netzwerk mit Benutzername und Passwo
Ok, danke für deine Hilfe. Probier das gleich aus.
|
Re: Zugriff auf Pfad im Netzwerk mit Benutzername und Passwo
Irgendwas scheine ich noch falsch zu machen. Ich nutze deinen Code in der Art:
Delphi-Quellcode:
Nutze ich das irgendwie falsch? Trotz richtigen Username/Password (Benutzername aus der Domain - Anmeldung über den Explorer funktioniert mit diesen Daten ohne Probleme) komme ich nicht auf den XP Pro Rechner (Domainrechner).
ConnectToNetworkDriveW('', PChar(PathDelim + PathDelim + Computer + PathDelim + 'IPC$'), PChar(UserName), PChar(Password), False);
Nach der Anmeldung nutze ich dann Pfade wie zum Beispiel "\\laptop\public". Von XP Pro -> XP Home funktioniert es soweit, aber umgedreht leider nicht. Das einzige was bei XP Pro -> Home noch nicht funktioniert, sind die adminstrativen Freigaben. Kann man bei XP Home Version nicht die Administrativen Freigaben, wie "c$" ansprechen? Ist das evt. eine Home-Einschränkung? [EDIT/ADD] Ich nehm alles zurück. Das Problem lag an der Reihenfolge in meinen Code. XP Home -> Pro funktioniert jetzt auch. Unter XP Home gibt es leider keine administrative Freigaben, wie "c$". Macht aber nichts, dann synchroniziere ich eben vom Laptop aus ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz