我有一个运行良好的控制台应用程序,它可以打开一个.txt
文件并通过创建另一个文件来放置其输出.txt
。
但是,当我尝试使用Process.Start
我的应用程序(通过 VB 单击按钮)时,它会崩溃。我尝试了几十种代码组合并隔离了问题:
似乎如果我的控制台应用程序必须打开或与外部文件有任何关系,那么它就会崩溃。我可以轻松地Process.Start
在不使用外部数据的应用程序中使用。
我怎么解决这个问题?
确保外部应用程序有权修改文件。
您可以在ProcessStartInfo
您的Process
之前添加一个Start
:
ProcessStartInfo processInfo = new ProcessStartInfo();
processInfo.Verb = "runas";
processInfo.FileName = command;
processInfo.Arguments = parameters;
processInfo.UserName = "username";
processInfo.Password = password;
processInfo.Domain = "myDomain";
processInfo.UseShellExecute = false;
processInfo.LoadUserProfile = true;
Process.Start(processInfo);
这应该以管理员身份运行该进程并确保该进程有权修改文件。
此外,如果您可以提供崩溃的输出,这将非常有助于解决您的问题。