c++ - VC++ 2008,OpenProcess 总是返回错误 5(拒绝访问)

标签 c++ visual-studio-2008 visual-c++ openprocess

有人知道为什么当我尝试使用 PROCESS_ALL_ACCESS 作为所需访问权限调用 OpenProcess 时,MSVC++ 2008 总是在 GetLastError() 上返回错误 5 吗? PROCESS_VM_READ 工作得很好。我是这台计算机的管理员,它在 Dev C++ 中运行良好。

我需要在某处设置选项吗?

最佳答案

如果进程不是在您的凭据下或在您的登录 session 中运行的进程,则打开具有完全访问权限的进程可能是一项高特权操作 - 您需要遵循 MSDN 中的以下文档:

To open a handle to another process and obtain full access rights, you must enable the SeDebugPrivilege privilege. For more information, see Changing Privileges in a Token.

请记住,即使您拥有特权,在大多数情况下该特权并未启用 - 它必须在尝试使用该特权的代码中专门启用。

关于c++ - VC++ 2008,OpenProcess 总是返回错误 5(拒绝访问),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/169355/

相关文章:

c++ - 在对象声明上下文中获取此类型

c# - C++中推荐的++或+1是什么?

visual-studio-2008 - VS2008 调试器不会中断未处理的异常

代码崩溃编译器 : main() returning a struct instead of an int

visual-c++ - 使用Visual C++的OpenCV

C++ REST SDK a.k.a 卡萨布兰卡

c++ - 在 C++ 中使用定界符从文件中提取单词(由无符号字符组成)

c++使用visual studio编译错误

c# - Application.Run(form) 永不返回(在使用 System::Management 之后)

c++ - 如何使用 Github Actions 中的 MSVC 编译器?