变量名 | 类 型 | 静态 | 数组 | 备 注 |
pbuf | 整数型 | | |
dwSize | 整数型 | | |
lRetVal | 整数型 | | |
memaddr | 整数型 | | |
pCurProcInfo | SYSTEM_PROCESS_INFORMATION_ex | | |
ftStartTime | 长整数型 | | |
cRetVal | 整数型 | | |
pSid | 字节集 | | |
strDomain | 文本型 | | |
DomainSize | 整数型 | | |
strUserName | 文本型 | | |
n | 整数型 | | |
dwSize = 1024 × 1024
memaddr =
LocalAlloc (0, dwSize
)pbuf = memaddr
lRetVal =
NtQuerySystemInformation (5, pbuf, dwSize, 0
)
如果真 (lRetVal = 0
)
RtlMoveMemory_SYSTEM_PROCESSES (pCurProcInfo, pbuf, 188
)
判断循环首 (pCurProcInfo.dwProcessId ≠ 进程PID
) 

pbuf = pbuf + pCurProcInfo.dwNextEntryOffset

RtlMoveMemory_SYSTEM_PROCESSES (pCurProcInfo, pbuf, 188
)
判断循环尾 ()
如果真 (pCurProcInfo.dwProcessId = 进程PID
)

ftStartTime = pCurProcInfo.qCreateTime

WinStationGetProcessSid (0, 进程PID, ftStartTime,
{ }, n
)

pSid =
取空白字节集 (n
)

如果真 (WinStationGetProcessSid (0, 进程PID, ftStartTime, pSid, n
) = 0
)

LocalFree (memaddr
)

返回 (“服务关闭”)
LookupAccountSid (字符 (0), pSid, 字符 (0), n, 字符 (0), DomainSize, 0)

strUserName =
取空白文本 (255
)

strDomain =
取空白文本 (255
)

如果真 (LookupAccountSid (字符 (0
), pSid, strUserName, n, strDomain, DomainSize, 0
))


LocalFree (memaddr
)

返回 (strUserName
)



LocalFree (memaddr)返回 (“”)
变量名 | 类 型 | 静态 | 数组 | 备 注 |
pbuf | 整数型 | | |
dwSize | 整数型 | | |
lRetVal | 整数型 | | |
memaddr | 整数型 | | |
pCurProcInfo | SYSTEM_PROCESS_INFORMATION_ex | | |
ftStartTime | 长整数型 | | |
cRetVal | 整数型 | | |
pSid | 字节集 | | |
strDomain | 文本型 | | |
DomainSize | 整数型 | | |
strUserName | 文本型 | | |
n | 整数型 | | |
dwSize = 1024 × 1024
memaddr =
LocalAlloc (0, dwSize
)pbuf = memaddr
lRetVal =
NtQuerySystemInformation (5, pbuf, dwSize, 0
)
如果真 (lRetVal = 0
)
RtlMoveMemory_SYSTEM_PROCESSES (pCurProcInfo, pbuf, 188
)
判断循环首 (pCurProcInfo.dwProcessId ≠ 进程PID
) 

pbuf = pbuf + pCurProcInfo.dwNextEntryOffset

RtlMoveMemory_SYSTEM_PROCESSES (pCurProcInfo, pbuf, 188
)
判断循环尾 ()
如果真 (pCurProcInfo.dwProcessId = 进程PID
)

ftStartTime = pCurProcInfo.qCreateTime

WinStationGetProcessSid (0, 进程PID, ftStartTime,
{ }, n
)

pSid =
取空白字节集 (n
)

如果真 (WinStationGetProcessSid (0, 进程PID, ftStartTime, pSid, n
) = 0
)

LocalFree (memaddr
)

返回 (“服务关闭”)
LookupAccountSid (字符 (0), pSid, 字符 (0), n, 字符 (0), DomainSize, 0)

strUserName =
取空白文本 (255
)

strDomain =
取空白文本 (255
)

如果真 (LookupAccountSid (字符 (0
), pSid, strUserName, n, strDomain, DomainSize, 0
))


LocalFree (memaddr
)

返回 (strUserName
)



LocalFree (memaddr)返回 (“”)