%CurrentAppdataDir%. Unerwartetes Verhalten

Antworten
lukas-stapelbroek
Beiträge: 3
Registriert: 18 Jun 2015, 16:49

%CurrentAppdataDir%. Unerwartetes Verhalten

Beitrag von lukas-stapelbroek »

Guten Tag, die globalen Textkonstanten "%CurrentAppdataDir%" oder auch "%AppdataDir%" zeigen laut Dokumentation auf "c:\Documents and Settings\%USERNAME%\Application Data" um.

Erwartet: Nun erwarte ich, dass diese auf den Ordner : "c:\Documents and Settings\%USERNAME%\AppData" (zumindest in der deutschen Version von Windows) zeigen.

Ergebniss: Die Konstanten zeigen auf "c:\Documents and Settings\%USERNAME%\AppData\Roaming", was sich von der Dokumentation unterscheidet.

Lösung:
  • %CurrentAppdataDir% und %AppdataDir% leiten beide auf "c:\Documents and Settings\%USERNAME%\AppData" um
  • Aufteilung der Konstanten, sodass eine auf den alten, und eine auf den laut Dokumentation richtigen Pfad zeigen würden und anpassen der Dokumentation
  • Anpassen der Dokumentation
Benutzeravatar
d.oertel
uib-Team
Beiträge: 3327
Registriert: 04 Jun 2008, 14:27

Re: %CurrentAppdataDir%. Unerwartetes Verhalten

Beitrag von d.oertel »

Unerwartetes Verhalten von Microsoft

Die Ermittlung dieser Konstanten läuft über die Win32 API in diesem Fall über die Funktion SHGetSpecialFolderLocation mit der Konstante CSIDL_APPDATA.
Diese bringt unter NT5 wie dokumentiert "c:\Documents and Settings\%USERNAME%\AppData"
ab NT6 ist das Ergebnis "c:\users\<username>\AppData\Roaming"
By the way: Auch die Umgebungsvariable %Appdata% zeigt unter NT6 auf dieses Verzeichnis.
siehe auch:
https://msdn.microsoft.com/en-us/librar ... 85%29.aspx
https://msdn.microsoft.com/de-de/librar ... 85%29.aspx

Von daher betrachte ich das nicht als Bug (zumindest nicht in opsi), sonder als Weitergabe einer von MS erwünschten Verhaltensänderung der API des Betriebssystems auf dem der opsi-script/winst läuft.
Ich werde aber noch ein Hinweis in der Doku aufnehmen.

gruß
detlef oertel


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


Antworten