-
在获取进程的句柄时候使用的是根据进程id来获取句柄的方式,自然使用了OpenProcess这个函数,查MSDN:
- HANDLE WINAPI OpenProcess(
- In DWORD dwDesiredAccess,
- In BOOL bInheritHandle,
- In DWORD dwProcessId
-
);
首先函数返回的是个HANDLE,其中第一个参数是需要的权限,我就是在这个参数上出现了错误,使用PROCESS_ALL_ACCESS权限,该权限在win10下没有出现问题,但是程序运行在xp下面就是获取不到进程句柄,后来发现是这个权限问题,具体讨论可以参考 https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/eeb93be6-872c-4028-b0ae-cd873e089825/openprocess-error-in-windows-xp,后来改用PROCESS_VM_READ | PROCESS_VM_WRITE | PROCESS_VM_OPERATION即可
关于使用OpenProcess的一个错误
最新推荐文章于 2022-07-23 19:48:35 发布