?? getpids.inc
字號:
;=================================================
GetCurrentPIDs PROC USES EBX ESI EDI, PIDbuffer, PIDbuffersize
LOCAL PIDCount :DWORD
LOCAL What :DWORD
LOCAL CleanUp :DWORD
LOCAL Process :PROCESSENTRY32
AND PIDCount, 0
iMOV ESI, GetProcAddress
MOV EDI, PIDbuffer
iWin32i GetModuleHandle, sK32
TEST EAX, EAX
JE GetAllPIDsEnd
MOV EBX, EAX
sWin32 ESI, EBX, sCT32S
TEST EAX, EAX
JE GetAllPIDsEnd
sWin32 EAX, TH32CS_SNAPPROCESS, 0
CMP EAX, -1
JE GetAllPIDsEnd
iPUSH CloseHandle
MOV What, EAX
POP CleanUp
sWin32 ESI, EBX, sP32N
TEST EAX, EAX
JE Tidy
PUSH EAX
sWin32 ESI, EBX, sP32F
TEST EAX, EAX
POP ESI
JE Tidy
LEA EBX, Process
MOV Process.dwSize, SIZEOF PROCESSENTRY32
sWin32 EAX, What, EBX
CheckProc:
TEST EAX, EAX
JE Tidy
MOV EAX, Process.th32ProcessID
INC PIDCount
STOSD
sWin32 ESI, What, EBX
JMP CheckProc
Tidy:
sWin32 CleanUp, What
GetAllPIDsEnd:
MOV EAX, PIDCount
RET
TEXT K32, <KERNEL32.dll/0>
TEXTA CT32S,<CreateToolhelp32Snapshot/0>
TEXTA P32F, <Process32First/0>
TEXTA P32N, <Process32Next/0>
GetCurrentPIDs ENDP
;=================================================
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -