簡體   English   中英

taskkill和taskkill / f之間的區別

[英]Difference between taskkill and taskkill /f

Microsoft Technet上,我可以讀到taskkill有一個/f參數來強制taskkill進程。 我想知道這在內部是做什么的,以了解這種行為的影響。

taskkill (不帶/f )不會簡單地向進程發送WM_CLOSE消息,否則我的應用程序會詢問是否保存打開的文檔。 這使我假設它已經在TerminateProcess(MSDN)級別上運行。 但是, TerminateProcess沒有強制kill的參數。

那么, taskkilltaskkill /f在內部做了什么?

我讀了相關的問題C#Process.Kill()和Taskkill之間的區別,但它沒有答案。

最有可能的taskkill /f使用TerminateProcess ,其中沒有/f taskkill只發布WM_QUIT消息(而不是WM_CLOSE)。 文檔說TerminateProcess無條件地殺死了這個過程。

您可以嘗試以下實驗:

  1. 啟動notepad.exe並在notpad窗口中鍵入幾個字符
  2. 輸入taskkill /f /im notepad.exe 記事本會立即退出

現在這樣做:

  1. 啟動notepad.exe並在notpad窗口中鍵入幾個字符
  2. 輸入taskkill /im notepad.exe 記事本不會立即退出,但它會退出詢問您是否要保存修改。

暫無
暫無

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

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