如何解决c#: 使用进程启动依赖 Win32Exception 启动 appium 服务器
public class ProcessHandler
{
private static Process process;
private static ListenerHandler listenerHandler = new ListenerHandler();
public static void Start(string fileName,string arguments)
{
process = new Process();
process.StartInfo.FileName = fileName;
if (arguments != "")
process.StartInfo.Arguments = arguments;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.CreateNowindow = true;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.OutputDataReceived += new DataReceivedEventHandler(OutputHandler);
process.ErrorDataReceived += new DataReceivedEventHandler(OutputHandler);
process.Start();
process.BeginoutputReadLine();
process.BeginErrorReadLine();
process.WaitForExit();
}
private static void OutputHandler(object sender,DataReceivedEventArgs e)
{
if (e.Data != null)
Console.WriteLine(e.Data);
}
private static void Process_OutputDataReceived(object sender,DataReceivedEventArgs e)
{
// Todo.
}
public static void Kill()
{
try
{
if (!process.HasExited)
process.Kill();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,ex.GetType().ToString());
}
}
}
并且想用它来启动appium
服务器。
在我的 machine
中,我想要启动 appium
服务器,我只需打开 cmd
窗口,输入 appium
并启动服务器。
所以我尝试在这个类的例子中这样使用它:
ProcessHandler.Start("appium","");
并收到此错误(在 process.Start() 处):
System.ComponentModel.Win32Exception: '系统找不到文件 指定'
ProcessHandler.Start("notepad",@"C:\log.txt");
这很好用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。