Der übliche Weg, eine Verbindung zu einem Netztwerkpfad unter einem anderen Benutzer zu erstellen ist eigentlich
WNetAddConnection2. Eine Lösung könnte in etwa so aussehen:
Delphi-Quellcode:
const
cLocalName = 'N:'; // oder ein anderer verfügbarer Buchstabe
var
data: TNetResource;
res: Cardinal;
begin
data.dwType := RESOURCETYPE_DISK;
data.lpLocalName := cLocalName ;
data.lpRemoteName := <Der Netzwerkpfad>;
data.lpProvider := '';
res := WNetAddConnection2(data, <Das Passwort>, <Der Username>, CONNECT_TEMPORARY);
if res = NOERROR then begin
try
<Mach was immer nötig ist>
finally
res := WNetCancelConnection2(cLocalName , 0, false);
end;
end
else begin
<Fehlerbehandlung>
end;
end;