如何知道应用程序是否已停止处理任务?

如何知道应用程序是否已停止处理任务?

应用程序/可执行文件正在 Windows 7 中处理文件。

我需要 Windows 发出通知,告知我该文件已停止处理。这可能吗?或者还有其他方法吗?

答案1

您可以转到 Windows 任务管理器并检查任务是否正在进行或已终止。

CtlAltDel进入任务管理器。这非常简单,您可以查看任务是否正在运行。

答案2

取决于您的编程语言。但是在使用 Windows-API 的 C 中,如果您通过 CreateProcess() 创建任务,则可以提供 PROCESS_INFORMATION 结构,从而可以从中获得进程句柄。

 PROCESS_INFORMATION pi= { 0, };
 BOOL success= CreateProcess(....., &pi);

然后,您可以使用 WaitForSingleObject() 等待完成,或者将超时设置为零,返回代码 WAIT_FAILED 或 WAIT_TIMEOUT 表示进程仍在运行。

 DWORD result= WaitForSingleObject(pi.hProcess, 0);
 if (result==WAIT_OBJECT_0) {
   // Process is complete
 }

细节: 创建进程 等待单个对象

相关内容