检测任何使用OpenProcess的程序
Detect any program that uses OpenProcess?
保护我的程序我想有一个检查,检测任何程序执行OpenProcess与我的PID?我想防止其他程序轻易地获得我程序的句柄。
我有什么选择?(WinAPI等)当另一个程序使用OpenProcess时,我的程序是否会收到任何通知?
谢谢
我有什么选择?(WinAPI等)我的程序接收任何通知,只要另一个程序使用OpenProcess?
不,OpenProcess
发生在内核中,完全不与正在打开的进程交互而运行。由于它是由调试器使用的,并且可能在您的进程卡住或挂起时发生,因此让您的进程"意识到"它已被打开的某种需求是不切实际的。
您唯一的选择(这是一个糟糕的选择)是在OpenProcess
系统调用上使用某种形式的拦截。请注意,OpenProcess
有有效的用途,我认为许多病毒扫描程序在某些时候或另一个点使用它-防止病毒扫描程序进入"我被攻击了"模式,很可能。
如果你认为你可以用一种不容易规避的方式做到这一点,那么你就是在欺骗自己。将另一层钩子放入OpenProcess
系统调用中,跳过您的干扰,只调用"真正的"OpenProcess
,这并不是非常困难。所以,假设你的程序真的很有趣,有人会找到一种方法……
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- C++,系统无法执行指定的程序
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- C++ Windows 驱动程序MSB3030无法复制该文件,因为它找不到
- 重载操作程序时出错>>用于类中的字符串 memebr
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 试图在visual studio上用C++创建一个桌面应用程序
- 模板元程序查找相似的连续类型名称
- FFmpeg:制作一个应用程序比直接使用ffmepg更好吗
- 如何通过cpp程序运行shell脚本
- 有没有什么方法可以使用一个函数中定义的常量变量,也可以由c++中同一程序中的其他函数使用
- IPC使用多个管道和分支进程来运行Python程序
- 如何将c++程序的一些输出传递给shell,以便在shell中使用
- 使用C++程序合并排序没有得到正确的输出
- 基于boost的程序的静态链接——zlib问题
- 程序崩溃并显示"std::out_of_range"错误
- 在C应用程序中运行C++(带有STL)函数
- 检测任何使用OpenProcess的程序
- Win32 c++ openprocess应该返回null,如果用户已经退出应用程序,但没有