%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: 3319
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
opsi support - uib gmbh

For productive opsi installations we recommend support contracts.
http://www.uib.de
http://www.opsi.org
Antworten