我希望将Windows服务中所有用户的Environment.SpecialFolder.ApplicationData安装为具有管理员权限的本地系统。
示例:
如果我有Tom,Matt和Christine用户,我需要:
C:\用户\马特\应用程序数据\本地
C:\用户\汤姆\应用程序数据\本地
C:\用户\恭\应用程序数据\本地
提前致谢!
答案 0 :(得分:0)
以下是您可以通过该代码找到任何用户的ApplicationData路径 -
现在从应用程序数据路径替换当前用户名。
/// <summary>
/// GetAppDatafolder
/// </summary>
private static void GetAppDatafolder(string otherUserName)
{
var currentUserIdentity = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
var currentUserName = (currentUserIdentity.Contains(@"\")) ? (currentUserIdentity.Split('\\')[1]) : currentUserIdentity;
var currentAppDataPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
var otherUserAppDataPath = currentAppDataPath.Replace(currentUserName, otherUserName);
Console.WriteLine(string.Format("Current User AppDataPath : {0}", currentAppDataPath));
Console.WriteLine(string.Format("{0} AppDataPath : {1}", otherUserName, otherUserAppDataPath));
}