Laden...

GetTempPath gibt System32 Verzeichnis zurück

Erstellt von Little_Bird vor 15 Jahren Letzter Beitrag vor 14 Jahren 1.527 Views
L
Little_Bird Themenstarter:in
12 Beiträge seit 2006
vor 15 Jahren
GetTempPath gibt System32 Verzeichnis zurück

Hallo zusammen!

Ich habe das Phänomen, dass mir die Funktion System.IO.Path.GetTempPath() "C:\Windows\System32" zurückliefert (Vista). Das ganze passiert nachdem ein Bootstrapper das .NET Framework 3.5 installiert hat.

Hat jemand eine Idee woran das liegen könnte (erstmal ganz allgemein)?
Mir sind ja alle Verzeichnisse recht.. aber System32 sollte doch nicht zurückgegeben werden oder ist das auch ein gültiger Temp Pfad ? Die Temp-Umgebungsvariablen zeigen alle auf andere Verzeichnisse.

26 Beiträge seit 2009
vor 15 Jahren

Hallo Little_Bird,

Hab's gerade bei mir getestet; Es wird der richtige Pfad ausgegeben!

Hast Du mal einen Neustart versucht?

Gruß,
Thomas van Veen

L
Little_Bird Themenstarter:in
12 Beiträge seit 2006
vor 15 Jahren

Nach einem Neustart ist wieder alles ok. Das Problem ist allerdings, dass dieses Verhalten während einer Installationsroutine passiert.
Also zuerst startet ein Bootstrapper, der das .NET Framework 3.5 installiert. Auf einem Testrechner muss anschließend ein Neustart durchgeführt werden um die Installation des Frameworks abzuschließen. Daraufhin wird eine Exe Datei aufgerufen (.NET) die Dateien in ein temporäres Verzeichnis auf dem Zielsystem kopieren soll.

Und hier bekomme ich von GetTempPath() das System32 Verzeichnis zurück..

Mit einem Neustart ist mir hier nicht geholfen. Natürlich könnte ich mir jetzt irgendein eigenes temporäres Verzeichnis basteln... aber das will ich eigentlich nicht. Deshalb möchte ich erstmal hören, ob jemand hier schonmal ein ähnliches Problem hatte oder vielleicht sogar die Ursache kennt.

D
201 Beiträge seit 2007
vor 14 Jahren

Hallo,

ich kenne zwar das Problem (noch) nicht, aber vielleicht hilft dir das weiter:


Environment.GetEnvironmentVariable("TEMP");

Viel Erfolg!

Gelöschter Account
vor 14 Jahren

ich kenne zwar das Problem (noch) nicht, aber vielleicht hilft dir das weiter:

gettemppath macht exakt das gleiche. daher wird das nicht helfen 😃

siehe:

The GetTempPath function checks for the existence of environment variables in the following order and uses the first path found:

The path specified by the TMP environment variable.
The path specified by the TEMP environment variable.
The path specified by the USERPROFILE environment variable.
The Windows directory.