Существует ли манифест сборки (или, возможно, флаг PE-образа) для отказа от защиты NoExecute (или для ее включения)?
По умолчанию Windows защищает только свои двоичные файлы с помощью защиты NoExecute:
Но я мог бы захотеть включить свой исполняемый файл в защиту NX.
мне также может понадобиться указать пользователю, что мое приложение несовместимо с защитой NX. Вместо того, чтобы заставлять пользователя вручную находить и добавлять меня в список, я могу сделать это за него:
Примечание. я сравниваю это с моей возможностью подписаться на запуск моего приложения в качестве обычного пользователя:
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges> <requestedExecutionLevel level="asInvoker" uiAccess="false"/> </requestedPrivileges> </security> </trustInfo>
Или возможность отказаться от защиты «запуск от имени обычного пользователя»:
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges> <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/> </requestedPrivileges> </security> </trustInfo>
Примечание: я не думаю, что существует способ включить или отключить защиту NX. Поэтому, если ответ Нет, это нормально. Но я все же спрашиваю, потому что могу ошибаться.