簡體   English   中英

win32進程終止檢測:WMI與WaitForSingleObject

[英]win32 process termination detection: WMI vs. WaitForSingleObject

我正在編寫Windows服務(c ++),該服務需要檢測特定的Windows進程終止。

我考慮了兩種不同的方法來檢測終止:

  1. 使用WMI描述這里
  2. 在進程的句柄上使用winapi WaitForSingleObject(hHandle, INFINITE)函數。

明顯的區別是WMI使用了CALLBACK函數。

兩種方法之間的其他主要區別,優點和缺點是什么?

謝謝!

我之前已經編寫了過程監視服務,並使用WMI監視過程。 它允許您指定流程的“ where”子句以進行監視,並且正如您提到的那樣,在發生某些情況時調用您。

這樣做的好處是,您不必讓線程塊等待有問題的進程退出,而只需運行WMI查詢並在某些事件終止時等待回調即可。 缺點是WMI API比Win32 API更加羅word。 特別是,您必須在WMI中以字符串形式建立查詢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM