Laden...

Programmzugriff auf Datei im Netzwerk scheitert

Erstellt von Dux vor 15 Jahren Letzter Beitrag vor 15 Jahren 3.116 Views
D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren
Programmzugriff auf Datei im Netzwerk scheitert

Hallo community,

mein C#-Updater holt sich vom Netzwerk Informationen über eine Datei (z.B. Version) und kopiert sie anschließend.
Unter XP funktioniert das problemlos.
Unter Vista allerdings bekomme ich eine "System.IO.DirectoryNotFoundException", wenn ich versuche, auf die im Verzeichnis, in dem die Datei liegt, existierenden Dateien mit Directory.GetFiles() zuzugreifen. Ich kann die entsprechende Datei also nicht vom Netzwerk kopieren. Per "Hand", also im Explorer funktioniert das allerdings. Meine Anwendung wird mit Administratorenrechten vom Desktop aus gestartet.

Hat jemand eine Idee, wieso der Netzwerkzugriff per Programm aus scheitert?

Gruß,
Dux

Gelöschter Account
vor 15 Jahren

ist der ordner als netzlaufwerk gemapped, dann ist es nur für das aktuelle benutzerkonto so.

demnach sieht zwar das benutzerkonto dieses laufwerk aber das daminkonto hat so ein laufwerk nicht.

K
80 Beiträge seit 2006
vor 15 Jahren

Würde Jack spontan recht geben,
wenn es so ist, dann musst du dich erst inpersonieren so weit ich weiß.
Du schaust am besten mal nach unter welchem account du ausführst: WindowsIdentity.GetCurrent().Name

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

Danke schonmal für die Anregungen.

Das Netzlaufwerk ist gemappt und wird unter dem gleichen Benutzer wie der Updater ausgeführt, d.h. daran liegt es nicht.

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

Problem hat sich erledigt. Ich habe die Adminrechte für den Updater entzogen (!) und es funktioniert jetzt. Wieso das so ist, weiß ich nicht.

Trotzdem danke für die Hilfe.

Dux

Gelöschter Account
vor 15 Jahren

evtl hat der admin benutzer keine rechte für die ordner auf dem netzlaufwerk?

3.971 Beiträge seit 2006
vor 15 Jahren

Kommt der Fehler beim Zugriff auf die Datei auf dem Netzlaufwerk oder beim Speichern/Anlegen der ZielDatei auf dem lokalen Rechner?

Bei zweiterem, wo speicherst du die Datei?

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

evtl hat der admin benutzer keine rechte für die ordner auf dem netzlaufwerk?

Doch, die Rechte hatte er.

Kommt der Fehler beim Zugriff auf die Datei auf dem Netzlaufwerk oder beim Speichern/Anlegen der ZielDatei auf dem lokalen Rechner?

Bei zweiterem, wo speicherst du die Datei?

Letzeres. Die Datei wird in einem Ordner auf dem Desktop gespeichert.

3.971 Beiträge seit 2006
vor 15 Jahren

Wie kommst du an den Pfad zum Desktop ran?

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

Wie kommst du an den Pfad zum Desktop ran?

Über Parameter, den man dem Updater übergibt.

3.971 Beiträge seit 2006
vor 15 Jahren

Wenn du hier hilfe erwartest, solltest du auch mitspielen. Es macht keinen Spaß dir alles aus der nase ziehen zu müssen. Dein letzter Satz ist so aussagekräftig wie ein Sackreisnudeln.

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

Wenn du hier hilfe erwartest, solltest du auch mitspielen. Es macht keinen Spaß dir alles aus der nase ziehen zu müssen. Dein letzter Satz ist so aussagekräftig wie ein Sackreisnudeln.

Wenn ich wüsste, in welchem Umkreis sich das Problem bewegen würde, könnte ich auch Aussagen zu möglicherweise relevanten Informationen geben. Ich bin dankbar für jede Hilfe, aber solche Vergleiche wie dein letzter Satz sind fehl am Platz.

Nochmal zum Verständnis:
Das Programm, das geupdatet werden soll, übergibt dem Updater Parameter. Einer davon ist der Ort des Quellprogramms, in dem Fall der Desktop.

1.696 Beiträge seit 2006
vor 15 Jahren

Arbeitest du mit LW-Buchstaben oder UNC-Pfad? Letzteres würde ich empfehlen. Ist der Desktop von AllUsers oder individuel?

Ich bin verantwortlich für das, was ich sage, nicht für das, was du verstehst.

**:::

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

Ich benutze LW-Buchstaben, UNC hab ich aber auch schon probiert. Ob der Desktop Allusers ist oder nicht, weiß ich gerade nicht, ich kann es auch gerade leider nicht testen. Ich reich es nach, sobald ich wieder Zugriff auf den Rechner hab.

3.971 Beiträge seit 2006
vor 15 Jahren

Environment.SpecialFolder(SpecialFolder.Desktop) könnte dein Problem lösen

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

Aber es ist ja nicht immer der Desktop. Der Pfad, an dem der Updater die Dateien schreiben/kopieren soll wird über Parameter dem Updater übergeben.

3.971 Beiträge seit 2006
vor 15 Jahren

Dann liegt halt ein Problem mit deinen Parametern oder deiner Übergabe vor!

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...

D
Dux Themenstarter:in
128 Beiträge seit 2004
vor 15 Jahren

Nein, die Parameter passen alle, unter XP funktionierts ja auch.

3.971 Beiträge seit 2006
vor 15 Jahren

Unter XP gibt es den Ordner_Dokumente und Einstellungen_ unter Vista nicht. Den Ordner Programme gibts beispielsweise auch nicht. Nimm die entsprechende richtigen Pfade aus Environment

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...