我希望在 C# 中有什么方法可以作为程序找出系统中可用的用户列表,即在我的计算机中以及他们的目录路径。我的意思是假设有 2 个用户
“用户 A”和“用户 B”
他们的路径我的意思是用户 A 的所有文档都将在 D:\Documents and Settings\User A 中,对于用户 B 也是如此。
C# 中有什么方法可以找出用户列表及其各自目录的路径。
你可以这样做
string users_reg_key=
@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DocFolderPaths";
public string[] ListWinUsersList()
{
//The registry key for reading user list.
RegistryKey key =
Registry.LocalMachine.OpenSubKey(users_reg_key, true);
string[] winusers = " ".Split(' ');//this resolve problem with assigned variable
if (key != null && key.ValueCount > 0)
{
winusers = key.GetValueNames();
}
return winusers;
}
编辑
获取目录尝试这样的事情
string path = Directory.GetParent(Environment.GetFolderPath(Environment.
SpecialFolder.ApplicationData)).FullName;
if ( Environment.OSVersion.Version.Major >= 6 ) {
path = Directory.GetParent(path);
}