我的代码在管理员权限下运行,但无法看到/执行c:\windows\system32\rstrui.exe(系统还原点UI)。
我仔细检查了代码确保它确实在管理员权限下运行(是的),并且我已经使用了File.Exist()和Directory.GetFiles()以及System.Diagnostics.Process.Start()进行了测试;返回的是找不到文件。
程序确实存在,我确实可以运行它,我可以将路径复制/粘贴到DOS中并列出它,执行它(没有隐藏空格等)。
有任何想法吗?
解决方案:
Tim(下面)给了我解决方案,不要引用c:\ windows \ system32,而是引用c:\ windows \ sysnative。 “sysnative”被重定向了,或者说,没有被重定向。 我仍然有些困惑于x64重定向的问题。 关键是以下内容有效:
Environment.GetEnvironmentVariable(“windir”)+ @“\ sysnative”
谢谢Tim!
我仔细检查了代码确保它确实在管理员权限下运行(是的),并且我已经使用了File.Exist()和Directory.GetFiles()以及System.Diagnostics.Process.Start()进行了测试;返回的是找不到文件。
程序确实存在,我确实可以运行它,我可以将路径复制/粘贴到DOS中并列出它,执行它(没有隐藏空格等)。
有任何想法吗?
解决方案:
Tim(下面)给了我解决方案,不要引用c:\ windows \ system32,而是引用c:\ windows \ sysnative。 “sysnative”被重定向了,或者说,没有被重定向。 我仍然有些困惑于x64重定向的问题。 关键是以下内容有效:
Environment.GetEnvironmentVariable(“windir”)+ @“\ sysnative”
谢谢Tim!