AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Netzlauferk verbinden unter Windows 7

Netzlauferk verbinden unter Windows 7

Ein Thema von simmi · begonnen am 12. Apr 2011 · letzter Beitrag vom 14. Apr 2011
Antwort Antwort
Benutzerbild von simmi
simmi

Registriert seit: 24. Nov 2004
Ort: Röbel/Müritz
112 Beiträge
 
Delphi XE5 Professional
 
#1

Netzlauferk verbinden unter Windows 7

  Alt 12. Apr 2011, 15:54
Hallo zusammen,

ich benutze die allgemein bekannte Funktion zum Verbinden eines Netzlaufwerkes und rufe diese, wie unten dargestellt, auf. Bisher (unter XP)funktioniert es ohne Probleme. Auf einigen Laptop's die mit Windows 7 Enterprise ausgestattet sind wird jedoch kein Netzlaufwerk verbunden. (WLAN ist an und auch vorhanden) Nehme ich die Daten und mache es manuell(auf so einem Laptop unter dem entsprechenden Benutzerkonto) dann ist alles ok. Die Nutzer haben das Recht Laufwerke zu verbinden und auch das Recht auf diese Ressouce zuzugreifen. Der von mir gewünschte Laufwerksbuchstabe ist auch nicht belegt.

Hat jemand eine Idee wo der Fehler liegen könnte??

Delphi-Quellcode:
function ConnectNetworkDrive(const ADrive: string; const ADirectory, AUsername, APassword: string;
                             const ARestoreAtLogon: Boolean ): Boolean;
var
  NetResource: TNetResource;
  dwFlags: DWORD;
  lPwd, lUser: PChar;
begin
  NetResource.dwType:=RESOURCETYPE_DISK;
  NetResource.lpLocalName:=PChar(ADrive);
  NetResource.lpRemoteName:=PChar(ADirectory);
  NetResource.lpProvider:=nil;

  if ARestoreAtLogon then dwFlags:=CONNECT_UPDATE_PROFILE
                     else dwFlags:=0;
  if AUsername<>'then lUser:=PChar(AUsername)
                   else lUser:=nil;
  if APassword<>'then lPwd:=PChar(APassword)
                   else lPwd:=nil;

  Result:=WNetAddConnection2(NetResource, lPwd, lUser, dwFlags)=NO_ERROR;
end;
Delphi-Quellcode:
if not ConnectNetworkDrive('T:', '\\server-ad\ad','Nutzer','Passwort',false) then
 begin
  showmessage('Verbindungsfehler zum Netzwerk. Bitte wiederholen.');
  exit;
 end;
Uwe
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Netzlauferk verbinden unter Windows 7

  Alt 12. Apr 2011, 16:12
Hallo,

ich schlage dir folgende Anpassung zur genaueren Analyse vor:
Delphi-Quellcode:
function ConnectNetworkDrive(const ADrive: string; const ADirectory, AUsername, APassword: string;
                             const ARestoreAtLogon: Boolean; var ErrCode: Cardinal): Boolean;
begin
// alles gleich wie bei Dir
ErrCode := WNetAddConnection2(NetResource, lPwd, lUser, dwFlags);
result := ErrCode = NO_ERROR;
end;

// ----

if not ConnectNetworkDrive('T:', '\\server-ad\ad','Nutzer','Passwort',false, err) then
begin
  showmessage('Verbindungsfehler zum Netzwerk. Bitte wiederholen. Fehlercode: ' + IntToStr(err) + ' Fehlermeldung: ' + SysErrorMessage(err));
  exit;
end;
Bei mir funktioniert es übrigens. Allerdings lasse ich Benutzername und Passwort leer, da bereits andere Verbindungen zum Server existieren. (Win7 Ultimate 32Bit / Delphi 2007)

Gruß, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules

Geändert von ChrisE (12. Apr 2011 um 16:17 Uhr) Grund: Quelltextfehler bereinigt ;-) / SysErrorMessage hinzugefügt
  Mit Zitat antworten Zitat
Benutzerbild von simmi
simmi

Registriert seit: 24. Nov 2004
Ort: Röbel/Müritz
112 Beiträge
 
Delphi XE5 Professional
 
#3

AW: Netzlauferk verbinden unter Windows 7

  Alt 14. Apr 2011, 11:16
Bin leider nicht immer und täglich im Portal, deshalb etwas später. Danke für Deinen Vorschlag. Habe ihn eingebaut und kann jetzt nur hoffen.
Benutzername und Passwort müssen mitgegeben werden, da nie sicher ist ob bereits eine Verbindung zu diesem Server aufgebaut wurde.

Allerdings wurde mir auch später mitgeteilt, dass die WLAN Verbindung sehr schlecht war. Warum hätte ich auch dieses unwichtige Detail wissen sollen...
Uwe
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

AW: Netzlauferk verbinden unter Windows 7

  Alt 14. Apr 2011, 11:27
Hallo,

ich bin mir sicher, dass du die Fallstricke kennst, ich schreibe es aber trotzdem nochmal
  • Zum Server kann nur eine Verbindung (Benutzername / Passwort) hergestellt werden. Sollte also bereits eine existieren mit einer anderen Kombination, kann dass auch der Grund dafür sein, dass sich das Netzlaufwerk nicht verbinden läßt
  • Der Laufwerksbuchstabe sollte natürlich frei sein

Gruß und viel Erfolg weiter hin.

Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat
Benutzerbild von simmi
simmi

Registriert seit: 24. Nov 2004
Ort: Röbel/Müritz
112 Beiträge
 
Delphi XE5 Professional
 
#5

AW: Netzlauferk verbinden unter Windows 7

  Alt 14. Apr 2011, 12:40
Das mit dem freien Laufwerksbuchstaben, ja und kein Kommentar.

Zitat:
Zum Server kann nur eine Verbindung (Benutzername / Passwort) hergestellt werden. Sollte also bereits eine existieren mit einer anderen Kombination, kann dass auch der Grund dafür sein, dass sich das Netzlaufwerk nicht verbinden läßt
Hilf mir mal auf die Sprünge.

Sie haben die Möglichkeit ein anderes Netzlaufwerk auf dem gleichen Server über den Arbeitsplatz zu verbinden. Das Netlaufwerk wird im Arbeitsplatz angezeigt, sie machen Doppelklick und geben Nutzer und Passwort ein. (Gleicher Benutzername und gleiches Passwort).

Verstehe ich Dich richtig, dass wenn Sie dieses Laufwerk verbunden haben, eine Verbindung aus meinem Programm heraus fehl schlägt?? (Gleicher Server, anderes Laufwerk, gleiche Zugangsdaten)
Uwe
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: Netzlauferk verbinden unter Windows 7

  Alt 14. Apr 2011, 20:42
Verstehe ich Dich richtig, dass wenn Sie dieses Laufwerk verbunden haben, eine Verbindung aus meinem Programm heraus fehl schlägt?? (Gleicher Server, anderes Laufwerk, gleiche Zugangsdaten)
Nein, das Funktioniert.
Du kannst "beliebig" viele Laufwerke verbinden solange Du Dich gegenüber einem Server immer mit den selben Zugangsdaten authentifizierst. Aber wenn z.B.
Laufwerk X:\ als \\ServerA\Freigabe1 mit Benutzer1 : Passwort1 gesetzt ist
und Du versuchst dann
Laufwerk Y:\ als \\ServerA\Freigabe2 mit Benutzer2 : Passwort2 an zu legen wird es fehl schlagen.

Gruß, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat
14. Apr 2011, 22:27
Dieses Thema wurde am "14. Apr 2011, 22:27 Uhr" von "fkerber" aus dem Forum "Neuen Beitrag zur Code-Library hinzufügen" in das Forum "Netzwerke" verschoben.
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:22 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