运行句柄打开的文件(C ++ winapi)

时间:2011-10-28 10:25:02

标签: c++ winapi createprocess createfile

我在我的c ++应用程序中包含了一个exe文件作为资源,我需要运行它,但是我需要限制它的访问权限以便用户无法复制它。 我需要保持它的句柄打开,以便外部程序无法访问它,因为我使用FILE_FLAG_DELETE_ON_CLOSE作为标志,所以如果我的应用程序被杀死它将被删除。

但是因为我无法使用CreateProcess()或WinExec()运行它。 我知道这听起来很奇怪,但我有一个很好的理由。我需要那些来保护游戏的可执行文件免受dll注入作弊,我没有那个exe的代码。

1 个答案:

答案 0 :(得分:0)

由于您无法锁定整个文件,因此请使用LockFile锁定一小部分内容。您需要找到Windows不使用的字节范围。您可以通过向EXE添加虚拟资源来实现此目的。 (这不需要源代码)。