我有这个NASM代码
extern GetStdHandle
extern WriteFile
extern AllocConsole
extern FreeConsole
extern SetConsoleTitleA
extern SetConsoleCursorPosition
extern Sleep
extern ExitProcess
extern ExitWindowsEx
import GetStdHandle kernel32.dll
import WriteFile kernel32.dll
import AllocConsole kernel32.dll
import FreeConsole kernel32.dll
import SetConsoleTitleA kernel32.dll
import SetConsoleCursorPosition kernel32.dll
import Sleep kernel32.dll
import ExitProcess kernel32.dll
import ExitWindowsEx user32.dll
.
section .text use32
..start:
call [ExitWindowsEx]
执行时,它不执行关闭计算机的功能。我读到它需要参数,但我们究竟如何在C#
中传递这样的参数
答案 0 :(得分:3)
我假设你使用的是32位英特尔架构。在这种情况下,您必须传递堆栈中的参数。
mov eax, 1
mov ebx, 0
push eax
push ebx
call [ExitWindowsEx]