调试的时候出现“用户定义类型未定义”是怎么回事:
Private Declare Function NtQueryInformationProcess Lib "NTDLL.DLL" (ByVal ProcessHandle As Long, ByVal ProcessInformationClass As PROCESSINFOCLASS, ByVal ProcessInformation As Long, ByVal ProcessInformationLength As Long, ByRef ReturnLength As Long) As Long
' 第一个参数是希望操作的进程句柄,这个句柄必须以PROCESS_QUERY_INFORMATION模式存取。为了取得一个句柄,我们必须用OpenProcess函数:
'HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION,FALSE,dwProcessID);
'第二个参数是请求信息的类型,这个参数可以有许多个值,本文例子中将用ProcessBasicInformation (值为0)。
'因此,如果第二个参数是ProcessBasicInformation的话,则第三个参数必须为一个指针指向结构
Private Type PROCESS_BASIC_INFORMATION
ExitStatus As Long 'NTSTATUS 接收进程终止状态
PebBaseAddress As Long 'PPEB 接收进程环境块地址
AffinityMask As Long 'ULONG_PTR 接收进程关联掩码
BasePriority As Long 'KPRIORITY 接收进程的优先级类
UniqueProcessId As Long 'ULONG_PTR 接收进程ID
InheritedFromUniqueProcessId As Long 'ULONG_PTR 接收父进程ID
End Type
'Private Const PROCESS_QUERY_INFORMATION As Long = (&H400)