求openprocess函数实例?比生孩子还急该怎么处理
求openprocess函数实例?比生孩子还急....
先说下自己的疑惑吧。。。。
第一个函数GetWindowThreadProcessId,两个参数hwnd(findwindow可以获得) ,而lpdwProcessId怎么获得?我不知道,我只是定义了一个dw类型未附初值的rocessId,我以为呢?这个lpdwProcessId参数,是GetWindowThreadProcessId函数返回储存的结果,msdn上写(__out_opt LPDWORD lpdwProcessId),out估计就这个意思...
OpenProcess 三个参数,
HANDLE WINAPI OpenProcess(
__in DWORD dwDesiredAccess,(这个我懂)
__in BOOL bInheritHandle,(这个填不可继承,false)
__in DWORD dwProcessId,(但是这个呢,是上面的rocessId),...
);
我现在完全,糊涂,查了半天也没有结果...救救我吧...
请给我个实例,打开hello窗口的线程,越简单,越好,谢谢
------解决方案--------------------
DWORD pid;
GetWindowThreadProcessId(hwnd,&pid);
即可得到pid
如果要打开窗口的线程
HANDLE ThreadHandle=OpenThread(这个你知道,0,GetWindowThreadProcessId(hwnd,0));
------解决方案--------------------
函数功能:该函数用来打开一个已存在的进程对象,并返回进程的句柄。
函数原型:HANDLE OpenProcess(DWORD dwDesiredAccess,BOOL bInheritHandle,DWORD dwProcessId);
参数:
dwDesiredAccess:访问权限。
bInheritHandle:继承标志。
dwProcessId:进程ID。
函数功能:该函数返回创建指定窗口线程的标识和创建窗口的进程的标识符,后一项是可选的。
函数原型;DWORD GetWindowThreadProcessld(HWND hwnd,LPDWORD lpdwProcessld);
参数:
hWnd:窗口句柄。
lpdwProcessld:接收进程标识的32位值的地址。如果这个参数不为NULL,GetWindwThreadProcessld将进程标识拷贝到这个32位值中,否则不拷贝。
返回值:返回值为创建窗口的线程标识。
通过第一个函数返回的句柄,可以获知进程ID
第二个函数的作用就是你只知道句柄,不知道进程ID
先说下自己的疑惑吧。。。。
第一个函数GetWindowThreadProcessId,两个参数hwnd(findwindow可以获得) ,而lpdwProcessId怎么获得?我不知道,我只是定义了一个dw类型未附初值的rocessId,我以为呢?这个lpdwProcessId参数,是GetWindowThreadProcessId函数返回储存的结果,msdn上写(__out_opt LPDWORD lpdwProcessId),out估计就这个意思...
OpenProcess 三个参数,
HANDLE WINAPI OpenProcess(
__in DWORD dwDesiredAccess,(这个我懂)
__in BOOL bInheritHandle,(这个填不可继承,false)
__in DWORD dwProcessId,(但是这个呢,是上面的rocessId),...
);
我现在完全,糊涂,查了半天也没有结果...救救我吧...
请给我个实例,打开hello窗口的线程,越简单,越好,谢谢
------解决方案--------------------
DWORD pid;
GetWindowThreadProcessId(hwnd,&pid);
即可得到pid
如果要打开窗口的线程
HANDLE ThreadHandle=OpenThread(这个你知道,0,GetWindowThreadProcessId(hwnd,0));
------解决方案--------------------
函数功能:该函数用来打开一个已存在的进程对象,并返回进程的句柄。
函数原型:HANDLE OpenProcess(DWORD dwDesiredAccess,BOOL bInheritHandle,DWORD dwProcessId);
参数:
dwDesiredAccess:访问权限。
bInheritHandle:继承标志。
dwProcessId:进程ID。
函数功能:该函数返回创建指定窗口线程的标识和创建窗口的进程的标识符,后一项是可选的。
函数原型;DWORD GetWindowThreadProcessld(HWND hwnd,LPDWORD lpdwProcessld);
参数:
hWnd:窗口句柄。
lpdwProcessld:接收进程标识的32位值的地址。如果这个参数不为NULL,GetWindwThreadProcessld将进程标识拷贝到这个32位值中,否则不拷贝。
返回值:返回值为创建窗口的线程标识。
通过第一个函数返回的句柄,可以获知进程ID
第二个函数的作用就是你只知道句柄,不知道进程ID