NASMでプログラムを作成していますが、それをCRTにリンクしたくないので、エントリポイント(Win32エントリポイント)を指定します。これはプログラムのソースコードです:
global _myEntryPoint
section .text
_myEntryPoint:
mov eax, 12345
これがWin32エントリポイントについて私が知っていることです(間違っている場合は訂正してください):
ExitProcess()
)。今私が知らないのは次のとおりです。
提案された複製に対する私の回答で説明したように、 Win32エントリポイントから戻るべきではありません。その場合、レジスタを保持する必要はありません。あなたの質問の言い方は漠然とあなたが電話をかける前にレジスターを復元する必要があるのではないかと心配していたことを示唆していますがExitProcess
、これは間違いなくそうではありません。呼び出しExitProcess
てもエントリポイントから戻ることはなく、コードの実行を停止するだけです。(更新については、こちらも参照してください。これも興味深い場合があります。)
そのアドバイスを無視して、とにかくエントリポイントから戻ったとしても、実際には答えは同じです。実際にレジスタを保存する必要はありません。私の知る限り、この動作は文書化されていません。したがって、注意が必要な場合は、stdcall
規則に厳密に従うことを選択できます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加