某些Windows進程在服務停止後會繼續運行幾分鐘。有沒有一種方法在Python中檢測?如果Windows進程在服務停止時正在運行,如何檢查Python?
0
A
回答
0
import os
def getTasks(name):
r = os.popen('tasklist /v').read().strip().split('\n')
print ('# of tasks is %s' % (len(r)))
for i in range(len(r)):
s = r[i]
if name in r[i]:
print ('%s in r[i]' %(name))
return r[i]
return []
if __name__ == '__main__':
'''
This code checks tasklist, and will print the status of a code
'''
imgName = 'dwm.exe'
notResponding = 'Not Responding'
r = getTasks(imgName)
if not r:
print('%s - No such process' % (imgName))
elif 'Not Responding' in r:
print('%s is Not responding' % (imgName))
else:
print('%s is Running or Unknown' % (imgName))
重要提示!正如本教程的作者所述,他使用的平臺是Windows Server 2012,但該代碼很可能與其他Windows產品協同工作。至少它應該給你和想法如何去做你想要的。
希望它的幫助!
1
你可以嘗試psutil
包,特別是psutil.process_iter()
(返回了正在運行的進程的迭代器)。該軟件包用於其他分析器軟件包。處理功能的文檔可以在here找到。
我不知道你將如何找到進程標識有問題的服務(S),如果他們不在父/子PID關係明顯。我沒有在Windows上測試過。
相關問題
- 1. 如果檢測進程正在運行,請停止安裝
- 2. Selenium 2:如何檢查服務器正在運行並停止服務器?
- 3. 停止Windows服務,如果運行在C#
- 4. 如何告訴Puppet在停止運行時停止服務?
- 5. 如何清除正在運行的Windows服務的System.Runtime.Caching.MemoryCache而不停止服務?
- 6. 應用程序運行從Windows服務在python停止註銷時Windows XP
- 7. 如何在運行後停止進程?
- 8. 如何檢查在Windows服務器上運行的Java應用程序狀態(運行或停止)
- 9. 如何查找並停止在端口443上運行服務器的進程
- 10. 如何停止作爲Windows服務運行的web.py服務器
- 11. 如何從驅動程序檢查,如果mongoDB服務器正在運行
- 12. 如何在Netbeans中停止正在運行的進程
- 13. C程序 - 如何檢查Web服務是否正在運行
- 14. python停止線程正在運行
- 15. 如何在Windows卸載程序運行之前停止程序和服務
- 16. 如何停止正在運行的solr服務器?
- 17. 如何停止所有正在運行的流星服務器
- 18. Windows服務:如何在工作線程停止時觸發OnStop
- 19. 如何檢查服務是否停止
- 20. 如何停止另一個正在運行的進程java android
- 21. 檢查進程是否正在運行,如果不啓動它
- 22. 如何讓進程在遠程Windows服務器上運行
- 23. 如何停止在服務器上運行的程序?
- 24. 如何在Windows服務中運行長時間運行的進程?
- 25. 如何在應用程序停止時停止警報服務?
- 26. 如何停止運行服務?
- 27. 如何檢索Windows服務正在運行的用戶名?
- 28. 如何在Linux上檢查服務是否正在運行Mint
- 29. 如何在安裝前檢查服務是否正在運行?
- 30. Windows服務不停止「正在啓動」