gpt4 book ai didi

windows - 如何在 Win10 中使用 link.exe 链接来自 NASM 的 obj 文件

转载 作者:可可西里 更新时间:2023-11-01 10:03:47 26 4
gpt4 key购买 nike

我在 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);

其中 0x00016630 是 Sleep 函数的地址(从 kernel32.dll 的 dumpbin 中获取)。

我想制作可执行文件以在 Win 10 中运行。我所做的是:

nasm -f win32 sleep.asm

并得到 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

谁能帮忙解决这个问题?

最佳答案

链接器会自动在您使用 /entry 在命令行上传递的任何内容前添加一个下划线。试试这个:

link sleep.obj /entry:start /subsystem:windows /nodefaultlib

关于windows - 如何在 Win10 中使用 link.exe 链接来自 NASM 的 obj 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41598005/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com