ヒープの一部がアセンブリ命令として/テスト目的で実行されるアプリがあります-プログラムをPLCにダウンロードしますが、ユーザーはPLCにダウンロードする前にコードを実行することでアプリケーションの実行をシミュレートできます。以前は、命令が格納されているヒープからこれらのプログラムを実行し、これは正常に機能していましたが、現在はVS2012に変換されており、DEPをオフにするのはそれほど簡単ではないようです。何が返されるかに関係なく、どういうわけかDEPをオフにすることができるのか、GetProcessDEPPolicy
それともDEPを使用せずにヒープからアセンブリ命令を実行する他の手法があるのか疑問に思いました。
質問する
1680 次
1 に答える
6
DEPを無効にしたくない。アプリ内で動作するようにアプリを変更したい。
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366553%28v=vs.85%29.aspxごと
If your application must run code from a memory page, it must allocate and set the proper
virtual memory protection attributes. The allocated memory must be marked PAGE_EXECUTE,
PAGE_EXECUTE_READ, PAGE_EXECUTE_READWRITE, or PAGE_EXECUTE_WRITECOPY when allocating memory.
これらの簡単な指示に従うと、コードをDEPと共存させることができます。
于 2013-03-22T23:54:23.240 に答える