C#等价于fork()/exec()我正在开发一个程序,需要调用外部程序,但需要等待它执行。这是在C#中完成的(我是全新的,但对C++、Qt和C有很多经验)并且CreateProcess似乎不是我正在寻找的东西(启动一个进程,然后忘记它,我不不需要)。这是我的第一个Windows项目(或者至少,只有Windows,当然只有.NET),我更习惯于为*nix做这种事情,我会fork然后在一个孩子中执行,然后等待孩子终止。但我不知道从哪里开始寻找这样的东西。哦,我很确定我被困在.NET中,因为我需要对注册表的读取访问权限才能执行此项目,而.NET的注册表访问权限绝对令人惊叹(就我而言,我没有什么可以与之比较的)。谢谢。您可以使用流程类。它允许您指定一些关于如何执行它的选项,还提供了一种在执行下一条语句之前等待进程退出的方法。看看这个链接(msdn参考):http://msdn.microsoft.com/fr-fr/library/system.diagnostics.process.aspx基本上你可以做的是:进程p;//一些初始化它的代码,比如p=startProcessWithoutOutput(path,args,true);p.WaitForExit();初始化进程的示例(这只是我在某处使用的一些代码):p.StartInfo=newProcessStartInfo(command,args);p.StartInfo.RedirectStandardOutput=false;p.StartInfo.RedirectStandardError=true;p.StartInfo.UseShellExecute=false;p.StartInfo.CreateNoWindow=!showWindow;p.ErrorDataReceived+=(s,a)=>addLogLine(a.Data);p.开始();p.BeginErrorReadLine();返回p;}正如您在这段代码中看到的,您还可以执行一些输出重定向、错误重定向....如果您在课堂上四处挖掘,我想您会很快找到您需要的东西。varp=System.Diagnostics.Process.Start("记事本");p.WaitForExit();您可以使用Process类来启动外部进程。它会让你启动任意程序http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx以上是C#学习教程:C#中fork()/exec()的等价物是全部分享如果内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
