Seb*_*123 2 windows assembly nasm
我在 NASM 中有以下代码:
;sleep.asm
[SECTION .text]
global _start
_start:
xor eax,eax
mov ebx, 0x00016630 ;address of Sleep
mov ax, 5000 ;pause for 5000ms
push eax
call ebx ;Sleep(ms);
Run Code Online (Sandbox Code Playgroud)
其中0x00016630是Sleep函数的地址(取自kernel32.dll的dumpbin)。
我想制作可执行文件以在 Win 10 中运行。我所做的是:
nasm -f win32 sleep.asm
Run Code Online (Sandbox Code Playgroud)
并得到sleep.obj
结果。
所以现在我必须链接它。我选择 link.exe 不幸的是使用以下命令
link sleep.obj /entry:_start /subsystem:windows /nodefaultlib
Microsoft (R) Incremental Linker Version 14.00.24215.1
Copyright (C) Microsoft Corporation. All rights reserved.
LINK : error LNK2001: unresolved external symbol __start
sleep.exe : fatal error LNK1120: 1 unresolved externals
Run Code Online (Sandbox Code Playgroud)
有人可以帮助如何解决这个问题吗?
链接器将自动在您在命令行上传递的任何内容前面添加一个下划线/entry
。试试这个:
link sleep.obj /entry:start /subsystem:windows /nodefaultlib
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4099 次 |
最近记录: |