Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Netzlaufwerk verbinden (https://www.delphipraxis.net/107010-netzlaufwerk-verbinden.html)

F.W. 20. Jan 2008 19:35


Netzlaufwerk verbinden
 
Ich verbinde beim Computerstart ein Netzlaufwerk per NetAddConnection2 zu meiner NAS Festplatte.
Das Problem ist, dass die nicht immer an ist bzw. beim Computerstart noch nicht immer bereit. (so bekommt man natürlich nen Fehler 53 - Der Netzwerkpfad wurde nicht gefunden)
Gibt es Wege das Netzlaufwerk zu "verbinden" auch ohne dass der Pfad existiert und später wenn man darauf zugreifen möchte wird eben erst die richtige Verbindung hergestellt, also die Verbindungsdaten (Benutzername, Passwort etc.) zu hinterlegen oder so etwas ähnliches?

PS: Arbeite unter WinXP Home

Andy090778 20. Jan 2008 21:18

Re: Netzlaufwerk verbinden
 
theoretisch solltest du doch auch mit dem direkten Netzwerkpfad unter Delphi arbeiten können

marabu 20. Jan 2008 21:18

Re: Netzlaufwerk verbinden
 
Hallo,

stellt dir dein NAS keine UNC-Ressourcen (z.B. \\NASXYZ\VOL-A) zur Verfügung?
Musst du dein NAS unbedingt über Laufwerksbuchstaben ansprechen?

Wenn ja, dann würde ich die Verbindung einmal bei eingeschaltetem NAS herstellen (NET USE N: \\NASXYZ\VOL-A /PERSISTENT:YES). Durch die Aufnahme ins Profil (bei WNetAddConnection2 steuerst du das über das Flag CONNECT_UPDATE_PROFILE) bleibt die Verbindung erhalten, auch wenn das NAS abgeschaltet wird. Den Zustand des NAS zeigt dir der Explorer an.

Gute Nacht

F.W. 20. Jan 2008 21:25

Re: Netzlaufwerk verbinden
 
Ich kann über die UNC-Pfade drauf zugreifen, allerdings find ich es schöner, wenn ich einen Laufwerksbuchstaben dafür habe, so bin ich schnell in dem Freigabeordner :-)

CONNECT_UPDATE_PROFILE gibt ja sicher den selben Effekt, wie wenn ich das Netzlaufwerk mit Windows verbinde und da Verbindung wiederherstellen anhake oder?
Das Problem dabei ist nämlich, dass ich dann beim ersten Zugriff auf die Festplatte jedesmal den Benutzernamen und das Passwort eingeben muss und das wollte ich mir mit dem Programm ersparen.

Oder gibt es eine Möglichkeit zu einem vorhandenen Profil den Benutzernamen und das Passwort beim Hochfahren zu setzen? Meine Benutzernamen (ist Familienrechner) sind nicht passwortgeschützt.

marabu 20. Jan 2008 21:44

Re: Netzlaufwerk verbinden
 
UNC-Namen sind zukunftssicherer als DOS-Laufwerksbuchstaben - und den von dir angeführten Vorteil (so bin ich schnell in dem Freigabeordner) kann ich nicht so recht nachvollziehen. Aber betrachten wir es einfach als technische Herausforderung. Experimentiere doch mal mit diesem Flag:

MS Platform SDK :: WNetAddConnection2 :: Flags
CONNECT_CMD_SAVECRED

If this flag is set, and the operating system prompts for a credential, the credential should be saved by the credential manager. If the credential manager is disabled for the caller's logon session, or if the network provider does not support saving credentials, this flag is ignored. This flag is also ignored unless you set the CONNECT_COMMANDLINE flag.

Windows 2000/NT and Windows Me/98/95: This value is not supported.

Das liest sich so, als könnte es dich weiterbringen. NET USE kennt dafür übrigens den Schalter /SAVECRED.

Jetzt muss ich aber wirklich ins Bettchen.

F.W. 20. Jan 2008 22:14

Re: Netzlaufwerk verbinden
 
Zitat:

(so bin ich schnell in dem Freigabeordner) kann ich nicht so recht nachvollziehen.
Ganz einfach: Klick auf "Netzwerkumgebung" evtl. warten bis die Festplatte mal erscheint (ist bei uns auch so ein Problem, irgenwie streikt unser Netzwerk manchmal und es sind keine Computer zu sehen oder nicht per DNS anzusprechen ^^) dann die Freigabe anklicken geht einfach ne so schnell wie einfach nur auf das Laufwerk klicken.
(da ich viel mit Dateien herumschieben und Verzeichniswechseln zu tun habe kommts mir auf Schneligkeit an ;-)

Ich werde das mal testen aber ich würde eine Lösung in Delphi anstreben, da ich das Programm ja inzwischen schon geschrieben hab :-(


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