例如:windows用户现在为ABC,所对应的路径是C:\Users\ABC\AppData\Roaming。
如果windows用户ABC改名为AB,所对应的路径也是C:\Users\ABC\AppData\Roaming。
应该怎么做哪?请指教。谢谢。
12 个解决方案
#1
呼唤大侠, 呼唤大侠, 呼唤大侠,
#2
我已经windows用户名
->
能说中文么,这是中文语法么.
你现在是已经获取到用户名,还是什么意思
已经获取到用户名,不就是把字符串拼接一下就完了
string path=@"C:\Users\"+用户名+@"\AppData\Roaming";
->
能说中文么,这是中文语法么.
你现在是已经获取到用户名,还是什么意思
已经获取到用户名,不就是把字符串拼接一下就完了
string path=@"C:\Users\"+用户名+@"\AppData\Roaming";
#3
1:我想取得系统全部用户
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
#4
Environment.GetFolderPath
#5
这个只能取得当前登录用户的信息,其他用户的怎么取得那?
#6
查windows注册表即可。
#7
Environment.GetFolderPath
这个只能取得当前登录用户的信息,其他用户的怎么取得那?
查windows注册表即可。
怎么可以把注册表中的[HKey_Users]变成让人读懂的信息哪?如:S-1-5-18 是哪个用户怎么能知道那?
#8
大侠在那里阿,大家讨论一下好吗?
#9
1:我想取得系统全部用户
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
大侠帮帮忙阿
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
大侠帮帮忙阿
#10
取得用户名可以用
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"Select * from Win32_Account Where LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
System.Console.WriteLine(obj.Properties["Name"].Value);
}
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"Select * from Win32_Account Where LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
System.Console.WriteLine(obj.Properties["Name"].Value);
}
#11
这样来做吧
static void Main(string[] args)
{
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"SELECT * FROM Win32_Account WHERE LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
RegistryKey key = Registry.LocalMachine.OpenSubKey(string.Format(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\{0}", obj.Properties["SID"].Value));
if (key != null)
System.Console.WriteLine(string.Format("{0}\t\t{1}", obj.Properties["Name"].Value, key.GetValue("ProfileImagePath")));
}
System.Console.ReadKey();
}
static void Main(string[] args)
{
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"SELECT * FROM Win32_Account WHERE LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
RegistryKey key = Registry.LocalMachine.OpenSubKey(string.Format(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\{0}", obj.Properties["SID"].Value));
if (key != null)
System.Console.WriteLine(string.Format("{0}\t\t{1}", obj.Properties["Name"].Value, key.GetValue("ProfileImagePath")));
}
System.Console.ReadKey();
}
#12
::SHGetSpecialFolderPathA(NULL, path, CSIDL_APPDATA, FALSE);
一句话即可 path是一个CString类型的空串
#1
呼唤大侠, 呼唤大侠, 呼唤大侠,
#2
我已经windows用户名
->
能说中文么,这是中文语法么.
你现在是已经获取到用户名,还是什么意思
已经获取到用户名,不就是把字符串拼接一下就完了
string path=@"C:\Users\"+用户名+@"\AppData\Roaming";
->
能说中文么,这是中文语法么.
你现在是已经获取到用户名,还是什么意思
已经获取到用户名,不就是把字符串拼接一下就完了
string path=@"C:\Users\"+用户名+@"\AppData\Roaming";
#3
1:我想取得系统全部用户
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
#4
Environment.GetFolderPath
#5
Environment.GetFolderPath
这个只能取得当前登录用户的信息,其他用户的怎么取得那?
#6
Environment.GetFolderPath
这个只能取得当前登录用户的信息,其他用户的怎么取得那?
查windows注册表即可。
#7
Environment.GetFolderPath
这个只能取得当前登录用户的信息,其他用户的怎么取得那?
查windows注册表即可。
怎么可以把注册表中的[HKey_Users]变成让人读懂的信息哪?如:S-1-5-18 是哪个用户怎么能知道那?
#8
大侠在那里阿,大家讨论一下好吗?
#9
1:我想取得系统全部用户
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
大侠帮帮忙阿
2:取得全部用户所对应的AppData路径。例如:@"C:\Users\"+用户名+@"\AppData\Roaming";
3:如果系统用户改名,比如说ABC用户,对应的路径是 @"C:\Users\"+ABC+@"\AppData\Roaming";
如果ABC用户改名为AB的话,对应的路径还是@"C:\Users\"+ABC+@"\AppData\Roaming"这个情况发生的场合,
现在已经用户名AB,如何取得@"C:\Users\"+ABC+@"\AppData\Roaming"这个路径哪?
大侠帮帮忙阿
#10
取得用户名可以用
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"Select * from Win32_Account Where LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
System.Console.WriteLine(obj.Properties["Name"].Value);
}
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"Select * from Win32_Account Where LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
System.Console.WriteLine(obj.Properties["Name"].Value);
}
#11
这样来做吧
static void Main(string[] args)
{
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"SELECT * FROM Win32_Account WHERE LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
RegistryKey key = Registry.LocalMachine.OpenSubKey(string.Format(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\{0}", obj.Properties["SID"].Value));
if (key != null)
System.Console.WriteLine(string.Format("{0}\t\t{1}", obj.Properties["Name"].Value, key.GetValue("ProfileImagePath")));
}
System.Console.ReadKey();
}
static void Main(string[] args)
{
System.Management.ManagementObjectSearcher searcher = new System.Management.ManagementObjectSearcher(
@"\\" + System.Environment.MachineName + @"\root\cimv2",
"SELECT * FROM Win32_Account WHERE LocalAccount = True AND SIDType = 1");
foreach (System.Management.ManagementObject obj in searcher.Get())
{
RegistryKey key = Registry.LocalMachine.OpenSubKey(string.Format(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\{0}", obj.Properties["SID"].Value));
if (key != null)
System.Console.WriteLine(string.Format("{0}\t\t{1}", obj.Properties["Name"].Value, key.GetValue("ProfileImagePath")));
}
System.Console.ReadKey();
}
#12
::SHGetSpecialFolderPathA(NULL, path, CSIDL_APPDATA, FALSE);
一句话即可 path是一个CString类型的空串