Запуск файла, дескриптор которого открыт (C ++ winapi) - PullRequest
1 голос
/ 28 октября 2011

Я включил exe-файл в качестве ресурса в свое приложение на c ++, и мне нужно его запустить, но мне нужно ограничить его доступ, чтобы пользователь не мог его скопировать. Мне нужно держать его дескриптор открытым, чтобы внешние программы не могли получить к нему доступ, и потому что я использовал FILE_FLAG_DELETE_ON_CLOSE в качестве флага, поэтому он будет удален, если мое приложение будет убито.

Но из-за этого я не могу запустить его с CreateProcess () или WinExec (). Я знаю, это звучит странно, но у меня есть веская причина. Мне нужны такие, чтобы защитить исполняемый файл игры от чит-инъекции, и у меня нет кода этого exe.

1 Ответ

0 голосов
/ 28 октября 2011

Поскольку вы не можете заблокировать весь файл, заблокируйте очень маленькую часть с помощью LockFile. Вам нужно найти диапазон байтов, который Windows не использует. Вы можете достичь этого, добавив фиктивный ресурс в EXE. (Для этого не требуется исходный код).

...