C# 替换StartInfo.Filename用户
我在谷歌上搜索了几个小时,没有任何结果 我正试图打开一个位于C# 替换StartInfo.Filename用户,c#,.net,C#,.net,我在谷歌上搜索了几个小时,没有任何结果 我正试图打开一个位于“C:\Users\myUsername\”文件中的程序,但我找不到任何方法将我的用户名替换为其他应用程序用户 firstProc.StartInfo.FileName = @"C:\Users\Username?\AppData\Roaming\GameWool\Launcher.exe"; firstProc.StartInfo.UseShellExecute = false; firstProc.StartInfo.Redirec
“C:\Users\myUsername\”
文件中的程序,但我找不到任何方法将我的用户名替换为其他应用程序用户
firstProc.StartInfo.FileName = @"C:\Users\Username?\AppData\Roaming\GameWool\Launcher.exe";
firstProc.StartInfo.UseShellExecute = false;
firstProc.StartInfo.RedirectStandardInput = true;
因此,我基本上是在尝试替换我的\Users\USERNAME。因此,如果有人正在使用该应用程序,他应该使用自己的\Users\Username打开相同的“游戏”
我希望你明白我的意思。你可以使用
System.Environment.UserName
,这将检索当前用户名
由于某些原因,用户个人文件夹的路径可能不同。您可以使用
var UserFolder = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
但由于您想使用AppData\Roaming\
,这将直接引导您到该文件夹:
// C:\Users\username\AppData\Roaming
var UserRoamingFolder = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
在您的情况下,对于最后一个示例,路径如下所示:
firstProc.StartInfo.FileName = $@"{Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)}\GameWool\Launcher.exe"
你刚刚救了我一天。谢谢!不客气。如果我的回答有用,你可以接受。->
firstProc.StartInfo.FileName=@“C:\Users\”+System.Environment.UserName+@“\AppData\
是否正确?我可以在10分钟内接受。:@Putte,不客气。您可以使用字符串插值。因此它看起来像:$@“C:\Users\{System.Environment.UserName}\AppData\”我不会构建@“C:\Users\Users\”用户名“
path这样,个人文件夹的位置可能会不同@波莉,你介意我编辑你的帖子来添加更多信息吗?