黃易群俠傳M脫機外掛應用程式黃易神行
2436
1

[分享] 程序與進程

p148761320 發表於 2009-4-6 16:42:41 | 只看該作者 回帖獎勵 |正序瀏覽 |
在外掛編程技術中,為了能夠達到控制目的程式,除了通過視窗外,進程也是至關重要的。

進程
運行一個EXE可執行程式軟體時,Windows系統為這個程式初始化一個進程的結構用於運行和管理用。
進程中包含了很多的重要資訊與數據,Windows系統上可以同時運行很多的軟體,


所以,系統為每個創建的進程結構都會有些不同,
而且為了防止進程之間會產生相互干擾,為每個進程都進行了操作隔離。

進程ID
進程ID或稱為進程標識,進程ID是用來代表一個已被運行了的進程,指向這個進程用的。
可以通過進程ID得到該進程的一些相關資料資訊。
進程ID不是固定的值,每個軟體被運行時它的進程ID都是由系統隨機分配的,直到該進程被關閉後才會失效。

進程控制碼
作業系統把每個進程間都進行隔離處理,如果想要控制別的進程則需要打開進程() 來打開那個進程ID,
得到一個可以控制那個進程的控制碼,每次打開的得到進程控制碼都是會變化的。
當不再使用該進程控制碼時需要關閉控制碼() 關掉。


因為被打開的進程控制碼,即使那個進程已經關閉了控制碼還會一直有效。
而windows系統最多只能提供65536/4=16384個可用的控制碼數。
若不停的打開進程ID卻不及時關掉不用的進程控制碼,會導致系統變慢程式崩潰。



windows系統的任務管理器.功能表->查看->選擇列 選上 PID 就能看到進程ID了。



使用 procexp 可以查看到進程的很多資訊,可以在 功能表->查看 堻]置要顯示的內容。



使用強大的 冰刃 IceSword 軟體更可以查看到隱藏的進程。
下面的代碼通過創建進程() 來運行一個程式,並且能得到運行後的進程ID,
線程ID,進程控制碼,線程控制碼。



創建進程()
對於不需要使用的進程控制碼與線程控制碼要及時關閉掉哦!



枚舉進程() 與 打開進程()
上面的例子,先枚舉出來在運行的所有進程,把進程名與進程ID填充進下拉式列示方塊…

然後在下拉式列示方塊中選擇一個進程,打開該進程得到進程控制碼,

之後就可以終止進程() 來關掉這個進程了,關閉了該進程後不再需要進程控制碼了,使用 關閉控制碼() 關掉。



上圖代碼演示了 取視窗進程ID() 取進程主視窗() 取程式進程ID() 三個功能。
上例介紹了如何通過視窗控制碼得到其進程ID,通過進程名稱得到進程ID陣列,
同時能用進程ID得到他的主要視窗控制碼...
收藏收藏 分享分享 讚 幹 分享分享 FB分享
回覆

使用道具 舉報


9118 當前離線
UID
979597
熱心
257 值
嘉獎
0 次
違規
0 次
在線時間
107 小時
經驗
257 點
積分
257
精華
0
最後登錄
2011-2-25
閱讀權限
25
註冊時間
2008-8-12
論壇幣
5007 幣
聯合幣
0 枚
幸運鑽
0 顆
招待卷
0 點
查看詳細資料
Rank: 3
9118 2009-8-31 20:41:25
謝謝樓主的分享 不知道是否可以隱藏進程嗎??
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊


手機版 | Archiver | 外掛聯合國

GMT+8, 2024-11-25 16:14 , Processed in 0.049335 second(s), 18 queries , Memcache On.

版權說明:
  本站不會製作、經銷、代理外掛程式。僅免費提供外掛程式下載前之掃毒及掃木馬等安全檢測驗證,協助會員遠離盜號危險程式。本站所有資料均來自網際網路收集整理,說明文字暨下載連結轉載自原程 式開發站。站上出現之公司名稱、遊戲名稱、程式等,商標及著作權,均歸各公司及程式原創所有,本站程式所有權歸外掛聯合國所有。本程式所有權歸外掛聯合國所有.......

回頂部
第二步?
第三步?