作者peardog ( ^ _< )
看板C_Sharp
標題[問題] 取得工作管理員的命令列(1000P)
時間Wed Jul 11 20:19:09 2018
各位大哥大姊好,小弟我有個問題想請教
如何在程式內取得工作管理員的命令列(物件名稱+引數)
https://imgur.com/Km79VUA
我主要是想要抓到命令列的引數
試過兩種方法
第一種:
Process.GetProcesses()
這個可以找到所有執行中的process
但是沒有引數,只能取得process的完整路徑(process.MainModule.FileName)
例如 C:\Users\user1\Desktop\新文字文件.txt
而且有時候會跳例外 Win32Exception
第二種:
new ManagementObjectSearcher("SELECT CommandLine FROM Win32_Process))
這方法可以取得跟工作管理員一樣的命令列
但是無法抓到所有的process(只有32位元)
請問有辦法找到本機目前執行的所有處理序的命令列嗎?
就像工作管理員那樣
Ps
已解答 歡迎提出更好的解法
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.70.179.63
※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1531311552.A.91C.html
推 jun112561: 第一次知道工作管理員有命令列這東西... 07/11 20:49
→ smmoon: Can I get command line arguments of other processes07/12 08:58
→ smmoon: 標題下的好 問題沒煩惱...07/12 08:59
→ peardog: 這方法我用過了 command line 會是空的07/12 11:51
→ peardog: 目前我是自己發現跟權限有關07/12 11:53
→ peardog: 以系統管理員身份執行才能抓到所有process的命令列07/12 11:54
※ 編輯: peardog (118.166.71.111), 07/12/2018 12:00:43