未解析的外部符号x86程序集

时间:2014-06-26 10:26:57

标签: windows assembly

.386
.model flat,stdcall
.stack 4096
ExitProcess proto,dwExitCode:dword
DumpRegs PROTO

.code
main proc
     mov cx, 01h
     sub cx, 2
     call DumpRegs
     add cx, 2 ; Clears the sign flag
     invoke ExitProcess,0
main endp
end main

错误:

1>Example.obj : warning LNK4258: directive '/ENTRY:main@0' not compatible with switch '/ENTRY:main'; ignored
1>Example.obj : error LNK2019: unresolved external symbol _DumpRegs@0 referenced in function _main@0
1>C:...: fatal error LNK1120: 1 unresolved externals

我试着查找如何解决这个问题,但没有运气。任何人都可以帮助我运行这个东西吗?

解决方案:对于那些使用Kip Irvine的书并试图让他们的东西工作的人,你可以在这里找到如何使用他书中的库从头开始创建一个项目(下图):http://kipirvine.com/asm/gettingStartedVS2013/index.htm

请注意,关于如何创建一个程序使得它有点难以找到,它低于他的前两个。

1 个答案:

答案 0 :(得分:0)

您需要使用INCLUDE和INCLUDELIB包含具有dumpregs进程的库。