AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Informationen eines Netzlaufwerks speichern
Thema durchsuchen
Ansicht
Themen-Optionen

Informationen eines Netzlaufwerks speichern

Ein Thema von Baeuerle · begonnen am 20. Sep 2005 · letzter Beitrag vom 21. Sep 2005
Antwort Antwort
Seite 1 von 2  1 2      
Baeuerle

Registriert seit: 17. Mär 2005
Ort: Ettenheim
283 Beiträge
 
Delphi 2005 Professional
 
#1

Informationen eines Netzlaufwerks speichern

  Alt 20. Sep 2005, 14:41
Hallo,

ich habe folgendes Problem:

- Ein Anwender wählt ein gemapptes Netzlaufwerk aus ( X:\ = \\server\share\ ). X:\ wird von meinem Prog gespeichert.

- Der Anwender beendet mein Prog und trennt das gemappte LW

- Beim nächsten Start des Prog wird erkannt, dass das LW X:\ nicht da ist, es soll jetzt automatisch wieder hergestellt werden ( ohne den Anwender zu belästigen ) !!!!! So und hier liegt das Problem !!!

Ich kann mir zwar den UNC-Pfad merken, doch woher soll ich den username bzw. das Passwort erhalten wenn der Anwender das Netzlaufwerk auswählt!!

Um die Verbindung wieder herzustellen benötige ich schließlich diese Informationen. Kann man vielleicht aus der vorherigen Session etwas speichern???

Bitte um Hilfe ....Danke Baeuerle

**PUSH**
  Mit Zitat antworten Zitat
Baeuerle

Registriert seit: 17. Mär 2005
Ort: Ettenheim
283 Beiträge
 
Delphi 2005 Professional
 
#2

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 06:56
**PUSH**
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:04
So einfach wird das nicht sein, ich wüsste jetzt auf jeden Fall nicht, wie es OHNE Benutzerinvention gehen könnte. Warum arbeitest du nicht einfach mit dem UNC-Pfad? Normalerweise kannst du alle Dateioperationen auch damit ausführen.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
Baeuerle

Registriert seit: 17. Mär 2005
Ort: Ettenheim
283 Beiträge
 
Delphi 2005 Professional
 
#4

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:10
Hi Flocke,

danke erstmal, dass sich jemand um das Thema bemüht!

Das mit dem UNC-Pfad ist nicht das Problem. Dieser wird schon gespeichert! Der UNC-Pfad reicht allerdings nicht um das Laufwerk wieder herzustellen! Ich benötige zusätzlich die Benutzerinformationen bzw. Sessioninfos, und diese müssen doch bei einer aktiven Verbindung auslesbar sein, denn wenn weitere Netzlaufwerke in Windows hergestellt werden, muss der Benutzername und das Passwort ja auch nicht nochmal angegeben werden!

Greats Baeuerle
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:14
Hai Flocke,

dann müsste man dem Admin aber feste auf die Finger klopfen. Wenn er für die Verbindung mit der Freigabe ein Kennwort verlangt aber nicht für das schreiben/lesen auf Verzeichniss hat er ein riesen Problem weil er nämlich genau die Möglichkeit des Zugriffes über den UNC-Pfad nicht berücksichtigt hat.

Wenn die Authentifizierung notwendig ist sollte sie auch vom Anwender verlangt werden.

@Baeuerle:
So wie sich das liest sind die Clientrechner ja nicht in eine Domäne bzw. haben local andere Benutzerkennungen als auf dem Server. Habe ich das richtig verstanden?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Baeuerle

Registriert seit: 17. Mär 2005
Ort: Ettenheim
283 Beiträge
 
Delphi 2005 Professional
 
#6

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:19
@Sharky

Ja genau so ist es, die Benutzer melden sich lokal an, und dann nocheinmal getrennt an der Domain.
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:26
Zitat von Sharky:
Hai Flocke,

dann müsste man dem Admin aber feste auf die Finger klopfen. Wenn er für die Verbindung mit der Freigabe ein Kennwort verlangt aber nicht für das schreiben/lesen auf Verzeichniss hat er ein riesen Problem weil er nämlich genau die Möglichkeit des Zugriffes über den UNC-Pfad nicht berücksichtigt hat.

Wenn die Authentifizierung notwendig ist sollte sie auch vom Anwender verlangt werden.
Ist schon klar (einmal ohne, einmal mit PW geht auch IMHO gar nicht).

Ich wollte nur ausdrücken, dass ich einfach den UNC-Pfad benutzen würde - die Passwortabfrage erledigt dann das System. Wozu braucht man den Laufwerksbuchstaben?
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
Baeuerle

Registriert seit: 17. Mär 2005
Ort: Ettenheim
283 Beiträge
 
Delphi 2005 Professional
 
#8

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:30
@Flocke

Ok, der LW-Buchstabe wird nicht unbedingt benötigt, jedoch benötige ich immernoch die Anmeldeinformationen für die Domain, die ich irgendwie aus einer bestehenden Verbindung auslesen möchte!
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:33
Vergiss das mit dem Auslesen, es existiert nur noch ein token. Du musst die credentials vorher selbst abfragen und die Verbindung dann vom Programm aus herstellen. Die credentials musst du dann im protected storage speichern.

Grüße vom marabu
  Mit Zitat antworten Zitat
ringli

Registriert seit: 7. Okt 2004
504 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Informationen eines Netzlaufwerks speichern

  Alt 21. Sep 2005, 07:38
Hiermit funktioniert das Mounten eines Netzwerklaufwerkes ohne Benutzer / Passwort. Stand gestern vor dem gleichen Problem und hab hier im Forum die Lösung gefunden.
Delphi-Quellcode:
{*** Netzlaufwerk verbinden (ohne Passwort) ***}
function ConnectNetDrive(_locDrive, _netPath: string;
                         RestoreAtLogon: Boolean): DWORD;
var
  nRes: TNetResource;
  dwFlags: DWORD;
begin
  { NetRessource mit #0 füllen => Keine unitialisierte Werte }
  FillChar(NRes, SizeOf(NRes), #0);
  nRes.dwType := RESOURCETYPE_DISK;
  { Laufwerkbuchstabe und Netzwerkpfad setzen }
  nRes.lpLocalName := PChar(_locDrive);
  nRes.lpRemoteName := PChar(_netPath); { Example: \\Test\C }
  { Überprüfung, ob gespeichert werden soll }
  if RestoreAtLogon then
    dwFlags := CONNECT_UPDATE_PROFILE and CONNECT_INTERACTIVE
  else
    dwFlags := CONNECT_INTERACTIVE;

  Result := WNetAddConnection3(Application.Handle, nRes,
                               nil, nil, dwFlags);
end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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