如何从后面的代码访问rstrui.exe?
问题描述:
请告诉我如何从我的c#代码访问系统还原“rstrui.exe”。如何从后面的代码访问rstrui.exe?
我试过拨打C:\Windows\System32\rstrui.exe
; 但它根本无法访问。
我需要调用此函数将我的控件重定向到系统还原。
感谢....
答
您可以访问C:使用以下属性\ Windows \ System32下:
Environment.SystemDirectory
Environment.SystemDirectory Property
可以运行可执行文件使用下面的方法:
Process.Start(Path.Combine(Environment.SystemDirectory, "rstrui.exe"));
UPDATE >>>
唉唉......现在我看到你的问题。
当从64位Windows 7和Vista(也可能是Windows 8)上的32位代码访问System32
文件夹时,Windows'巧妙地'将该部分请求路径更改为SysWow64
。这就是为什么你可能有'找不到路径'的错误。为了解决这个问题,你可以使用以下命令:
Process.Start(@"C:\Windows\SysNative\rstrui.exe");
一个更完整的答案可能是:
if (Environment.Is64BitProcess)
{
Process.Start(Path.Combine(Environment.SystemDirectory, "rstrui.exe"));
}
else Process.Start("C:\\Windows\\sysnative\\rstrui.exe");
你试过到目前为止什么确切的代码? – Arran
你有什么尝试吗? –
是的,我可以通过这种方式调用系统备份和恢复..... –