Erkennung AppData\LocalLow
Ich versuche, suchen Sie den Pfad für die AppData\LocalLow
Ordner.
Ich gefunden habe, ein Beispiel, das verwendet:
string folder = "c:\users\" + Environment.UserName + @"\appdata\LocalLow";
was für einer ist gebunden an c:
und zu users
scheint ein bisschen zerbrechlich.
Habe ich versucht zu verwenden
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
aber das gibt mir AppData\Local
, und ich brauche LocalLow aufgrund der Sicherheitseinschränkungen unter die Anwendung ausgeführt wird. Er kehrte leer für meinen Dienst-Benutzer als auch (zumindest bei der Befestigung an den Prozess).
Irgendwelche anderen Vorschläge?
- Gibt es einen Grund, Sie können nicht appent eine
Low
auf den zurückgegebenen string? - oder
Path.Combine(localData, @"..\LocalLow")
- Natürlich könnte ich anfügen niedrigen oder verwenden Pfad kombinieren, aber ich denke, @Thomas Lösung ist die beste. Da ist es schon ein OS nennen, ich würde eher verwenden.
- Es sei denn, Microsoft hat versprochen, Sie zu verlassen 'LocalLow", wie die Namen in nicht-englischen Versionen von Windows, es scheint wie eine gute Idee, lieber das OS zu nennen...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
Environment.SpecialFolder
enumeration Karten zuCSIDL
, aber es gibt keineCSIDL
für dieLocalLow
Ordner. So verwenden Sie dieKNOWNFOLDERID
statt, mit derSHGetKnownFolderPath
API:Dump
?KNOWNFOLDERID
ständige (siehe link).Dump
ist eine Methode aus LinqPad der Wert angezeigt.