Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Datei auf Freigabe kopieren (https://www.delphipraxis.net/130343-datei-auf-freigabe-kopieren.html)

Dumpfbacke 6. Mär 2009 18:49


Datei auf Freigabe kopieren
 
Hallo,
ich möchte gerne mit meinem Delphi Programm eine Datei auf einen Server kopieren. Dazu gibt es eine Verstecke Freigabe von einem Windows 2003 Server. Hierzu muß ich mich mitteles Benutzername und Paßwort anmelden. Kann ich das auch ohne das Laufwerk local zu mappen ? Ich möchte keine Buchstabe der Freigabe zuorden einfach nur eine Datei kopieren und mich vorher mit -Benutzername und Paßwort anmelden. Zum Mappen eines Laufwerks habe ich hier schon etliches gefunden, jedoch ohne ein Buchstabe zuzuordnen kann ich nichts finden.

Hat jemand hierzu vileicht etwas Code für mich ?

Dumpfbacke

thkerkmann 6. Mär 2009 19:13

Re: Datei auf Freigabe kopieren
 
Hi,

verwende den UNC Pfadnamen, dann brauchst Du kein Laufwerk mappen.
Delphi-Quellcode:
  \\servername\freigabename\unterverzeichnis\dateiname
Zum Anmelden wirst Du dann evtl aufgefordert, oder du musst es programmatisch machen mit Hilfe der NetApi.

Gruss

Dumpfbacke 6. Mär 2009 19:26

Re: Datei auf Freigabe kopieren
 
Zitat:

Zitat von thkerkmann
Hi,

verwende den UNC Pfadnamen, dann brauchst Du kein Laufwerk mappen.
Delphi-Quellcode:
  \\servername\freigabename\unterverzeichnis\dateiname
Zum Anmelden wirst Du dann evtl aufgefordert, oder du musst es programmatisch machen mit Hilfe der NetApi.

Gruss

Das mit dem UNC Pfadnamen war mir klar. Ich suche eine Möglichkeit mich mittels Programm automatisch anzumelden. Der Benutzername und das Passwort sollten in meinem Programm sein und dann sollte sich mein Programm automatisch anmelden.

Dumpfbacke

SirThornberry 6. Mär 2009 19:27

Re: Datei auf Freigabe kopieren
 
Ich habe die Befürchtung das dies nur mit Verbinden eines Netzlaufwerkes klappt. Zumindest hab ich nur dafür bisher Funktionen gesehen.

thkerkmann 6. Mär 2009 19:34

Re: Datei auf Freigabe kopieren
 
Nö, klappt auch ohne Laufwerk

Delphi-Quellcode:
function TfrmDistributionMain.ConnectToMovieDir: boolean;
var
  aNetResource: tNetResource;
  Path: string;
  dwres: dword;
begin
  Path := ExcludeTrailingPathDelimiter(FPathToStorage);

  FillChar(aNetResource, SizeOf(aNetResource), 0);
  aNetResource.dwType := RESOURCETYPE_ANY;
  aNetResource.lpLocalName := nil; // hier kann auch nil verwendet werden -> kein Laufwerk mapping
  aNetResource.lpRemoteName := pChar(Path);
  aNetResource.lpProvider := nil;
  dwRes := WNetAddConnection2(aNetResource, pChar(Password), pChar(Username), 0);
  result := (dwRes = NO_ERROR) or (dwRes = ERROR_ALREADY_ASSIGNED);
end;
Gruss

SirThornberry 6. Mär 2009 21:09

Re: Datei auf Freigabe kopieren
 
Das war wohl zu einfach um das ich da selbst drauf gekommen wäre :oops:


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