我一直在尝试将程序从外部文件导出到主程序集程序,但它没有用。
以下是来自外部文件的测试代码:
; Export procedure Summa
format PE GUI 4.0
include 'win32a.inc'
section '.code' code readable executable
proc Summa
Public Summa
ret 2
endp
在主文件中我尝试附上Summa:
format PE GUI 4.0
include 'win32a.inc'
section '.data' data readable writeable
extrn Summa as Summa : proc
在编译主文件时,我在extrn关键字的行中出现了Illegal Instruction错误。
试图在网上搜索,但我很难找到如何在FASM中附加外部程序......
谢谢!
答案 0 :(得分:2)
我看到你有两个GUI可执行文件,这意味着"从外部文件导出程序到主程序集"?
你想制作两个目标文件(.obj)然后将它们链接在一起吗?
然后在两个文件中使用format MS COFF
,添加适当的extrn
和public
指令,并使用一些链接器(例如link.exe)来构建.exe文件。
另外,请阅读fasm.pdf,第2.4.3节"通用对象文件格式"。