【发布时间】:2010-12-29 16:55:11
【问题描述】:
我有一个程序执行另一个程序,当该程序完成后主程序继续运行。
Process p = Process.Start("program2.exe");
while (!p.HasExited)
Thread.Sleep(10000);
if (p.HasExited)
{
// Execute more code
}
这在我运行程序时效果很好。但在windows中用作计划任务时不起作用。这部分永远不会执行
if (p.HasExited)
{
// Execute more code
}
似乎找不到调试方法。 我已经被这个程序卡住了一个星期了。
【问题讨论】:
-
你确定 Process p = Process.Start("program2.exe");甚至一开始就被执行?
-
我同意,p 可能永远不会真正启动,因此它会立即转到 HasExited。你可以检查它的退出代码,看看是否有问题。
-
顺便说一句,C# 编程语言没有进程。 .NET 可以。
标签: c# .net process scheduled-tasks