Есть ли манифест сборки (или, возможно, флаг изображения PE), чтобы отказаться от защиты NoExecute (или отказаться от нее)?Совместимость с Win32 App: есть ли явная запись для вывода моего приложения из 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. Так что если ответ No, это нормально. Но я все еще спрашиваю, потому что я могу ошибаться.
Возможно, вам стоит упомянуть Editbin.exe и его параметр/nxcompat. –
@HansPassant Хорошая точка, но не все используют программную цепочку MS, и если они это сделают, они могут установить параметр в командной строке или настройках проекта (http://msdn.microsoft.com/en-us/library/ms235442%28v=vs .80% 29.aspx) – Anders
Он программист .NET, как и многие другие. –