Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Netzlaufwerk mit AS400 (https://www.delphipraxis.net/62274-netzlaufwerk-mit-as400.html)

Hummel 2. Feb 2006 10:18


Netzlaufwerk mit AS400
 
Kennt jemand eine Möglichkeit dynamisch im Programm ein Netzwerklaufwerk das auf einer AS400 liegt an der lokalen WS zu erstellen?

Über "net use" funktioniert das, allerdings habe ich das Problem dass über "net use" entweder der Benutzer oder ein anderes Paßwort übergeben werden kann - ich muss aber beides übergeben. :gruebel:

Mein nächster Gedanke war dann WNetAddConnection2, mit Freigaben auf Windows-Servern klappt das auch problemlos - bei der AS400 kriege ich aber "ACCESS_DENIED" ... nicht befriedigend. :wall:

Hat jemand eine Idee wie MS das über "Net use" macht um die Verbindung zu kriegen?

Bin für jede Idee dankbar.

Sharky 2. Feb 2006 10:38

Re: Netzlaufwerk mit AS400
 
Hai Hummel,

ersteinmal: "Herzlich Willkommen in der Delphi-PRAXiS" :hi:


Zitat:

Zitat von Hummel
... entweder der Benutzer oder ein anderes Paßwort übergeben werden kann ...

Warum kannst Du nicht beides übergeben?

Code:
NET USE g: \\server\freigabe /USER:blubb kennwort

Hummel 2. Feb 2006 13:49

Re: Netzlaufwerk mit AS400
 
Zitat:

Zitat von Sharky
ersteinmal: "Herzlich Willkommen in der Delphi-PRAXiS"

Danke :thumb:

Zitat:

Zitat von Sharky
Warum kannst Du nicht beides übergeben?

Ganz einfach ...

"net use" will dass das Paßwort eingegeben wird. Eine Übergabe als Parameter geht nur wenn kein Benutzer angegeben wird.
Und der Benutzer soll das Paßwort nicht kennen, damit sind auf der AS400 zuviele Rechte verbunden.

merlin17 2. Feb 2006 13:53

Re: Netzlaufwerk mit AS400
 
so sollte es gehen:

Delphi-Quellcode:
 if DriveExists('O:') then
    WNetCancelConnection2(PChar('O:'), 0, true);

 ConnectToNetworkDrive('O:', '\\192.168.100.121\D$', 'Domain\Pfister',
    'Geheim4711', false);


function TFHaupt.ConnectToNetworkDrive(Drive, Path, Username,
  Password: string; RestoreAtLogon: boolean): DWORD;
var
  NetResource: TNetResource;
  dwFlags: DWORD;
begin
  dwFlags := 0;
  ZeroMemory(@NetResource, sizeof(TNetResource));
  with NetResource do
  begin
    dwType := RESOURCETYPE_DISK;
    lpLocalName := PChar(Drive);
    lpRemoteName := PChar(Path);
    lpProvider := nil;
  end;

  if (RestoreAtLogon) then
    dwFlags := dwFlags or CONNECT_UPDATE_PROFILE;
  Result := WNetAddConnection2(NetResource, PChar(Password), PChar(Username),
    dwFlags);
end;

Klaus01 2. Feb 2006 13:58

Re: Netzlaufwerk mit AS400
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Hummel,

kannst Dir ja mal das Attachement anschauen, da wird das Passwort verschlüsselt
eingegeben. Die Verschlüsselung ist sicherlich nicht die beste, aber da kannst
Du ja eine bessere wählen.

Grüße
Klaus

Hummel 3. Feb 2006 08:20

Re: Netzlaufwerk mit AS400
 
Herzlichen Dank an Klaus und Merlin - so gings.

Ich hatte bei mir die TNetResourceA verwendet ... :wall:

Grüße aus dem bibberkalten Magstadt


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:31 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