Come posso ottenere il percorso dell'utente corrente della cartella “Dati Applicazioni”?
Domanda
1)come posso trovare l'unità di Installazione di Windows in cui l'utente sta lavorando.?Ho bisogno di questo per passare alla ApplicationData in DocumentsandSettings.
2)Inoltre come posso ottenere il nome utente troppo in modo che io possa goto ApplicaitionData.?Ad esempio:"D:\Documents and Settings\utente\Dati Applicazioni".
Soluzione
Guardate che combina Ambiente.GetFolderPath e Ambiente.SpecialFolder per fare questo.
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
Altri suggerimenti
A seconda di che cosa si sta facendo, si potrebbe anche voler guardare
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
Se l'utente si trova su un dominio non saranno archiviati in locali AppData
cartella e non sono sincronizzate con il proprio profilo comune.
Avere uno sguardo al Environment.SpecialFolders
Environment.SpecialFolder.ApplicationData;
Environment.SpecialFolder.System
che dovrebbe farti arrotondare il nome utente requisito.
Hanno un occhiata al Sistema.Ambiente di classe e di sua proprietà e metodi, e.g:
string systemDir = System.Environment.SystemDirectory;
string docs = System.Environment.GetFolderPath(
System.Environment.SpecialFolder.MyDocuments));
string systemDrive = System.IO.Path.GetPathRoot(systemDir);
Il primo restituisce "C:\Windows\system32"per esempio, e la seconda "C:\Documents and Settings ome utente\Documenti".
Prova questo:
string filePath = Environment.GetFolderPath(System.Environment.SpecialFolder.ApplicationData);
1)come posso trovare l'unità di Installazione di Windows in cui l'utente è il lavoro.?
var systemDrive = Environment.ExpandEnvironmentVariables("%systemdrive%");
Ho bisogno di questo per passare alla ApplicationData in DocumentsandSettings.
Non hai veramente bisogno di recuperare il valore delle unità di sistema o utente attualmente loggato nome per raggiungere questo obiettivo.Ci sono predefinite le variabili di ambiente %localAppData%
e %appData%
che dare il percorso completo del file di queste directory, come illustrato nel codice riportato di seguito:
var localApplicationData = Environment.ExpandEnvironmentVariables("%localappdata%");
//this gives C:\Users\<userName>\AppData\Local
var roamingApplicationData = Environment.ExpandEnvironmentVariables("%appdata%");
//this gives C:\Users\<userName>\AppData\Roaming
2)Inoltre come posso ottenere il nome utente troppo in modo che io possa goto ApplicaitionData.?Ad esempio:"D:\Documents and Settings\utente\Application Dati".
Di nuovo, non hai bisogno di nome utente per ottenere l'applicazione di dati di percorso, come ho discusso in precedenza.Comunque, per amor di conoscenza, è possibile scaricarlo da %username%
variabile di ambiente come mostrato di seguito:
var currentUserName = Environment.ExpandEnvironmentVariables("%username%");