微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

helloworld.exe有时仅在命令行上提供输出

如何解决helloworld.exe有时仅在命令行上提供输出

最近开始学习86汇编并制作了一个基本的helloworld.exe,但是当我通过cmd运行它时,没有任何输出。我确实从中得到了一次输出,并且没有更改任何代码。它也可以很好地组装和链接,所以我不确定为什么运行它时什么也没发生。

cmd图片

1

这里是代码,以防万一我搞砸了

.386
.model flat,stdcall
option casemap :none

include \masm32\include\kernel32.inc
include \masm32\include\masm32.inc
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\masm32.lib

.data
 message db "HelloWorld!",0

.code 
main:
 invoke StdOut,addr message
 invoke ExitProcess,0
end main 

解决方法

谢谢Michael Petch,不确定如何将您的评论标记为答案(第一次使用堆栈溢出),Masm32上的默认链接器就是问题,使用/ SUBSYSTEM:CONSOLE作为通过命令行的链接器解决了该问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。