Process.Start找不到可执行文件

时间:2018-06-29 17:57:43

标签: c# .net process.start

我想从我的.NET应用程序更改BCD。为此,我创建了以下片段:

Dim a As Object
Do
    DoEvents
    On Error Resume Next 
    Set a = Doc.getElementsByName("price")
    On Error GoTo 0
Loop While a Is Nothing 

奇怪的是,它引发了一个异常,说

  

系统找不到指定的文件

这怎么了?

1 个答案:

答案 0 :(得分:1)

在System32之外运行应用程序时,我遇到了类似的问题。我发现一种解决方法是使用SysNative。在测试中,System32何时可以工作或SysNative对于System32中驻留的不同应用程序何时工作都没有一致性。

static void RunBcdEdit() 
{
    Process process = new Process();
    process.StartInfo.FileName = "c:\\Windows\\SysNative\\bcdedit.exe";
    process.StartInfo.UseShellExecute = false;        
    process.WaitForExit();
}