繁体   English   中英

Visual Studio 2012:在DLL项目中使用MASM x64

[英]Visual Studio 2012: Using MASM x64 in DLL Project

好了,所以我有一个用C ++编写的控制台项目。 我需要一个GUI,并且我不想弄乱任何可用的GUI库,因此我转向C#。

该应用程序执行许多底层操作,包括一些汇编代码,并且由于x64不支持内联汇编,因此我使用的是MASM。 因此,我无法合理地移植代码,因此我将C ++应用程序设为DLL项目。

当我启用MASM时,我在“ Build Customizations”中选中“ masm”框。 之后,预期的项目属性>配置属性> Microsoft宏汇编程序菜单选项不会出现!

编译时,出现“未解析的外部符号X ”,其中X是我写入.asm文件的标签。

我研究了从原始二进制文件中导出函数的过程,但是看来您需要构建整个导出表……我宁愿不要。

因此,简而言之,如何将ASM编译为64位Windows DLL? 也许有更好的方法可以做到这一点?

您可以将汇编代码编译到静态库中,然后创建一个本机C ++ DLL,以从汇编库中导出函数。

我相信这个问题,尽管我没有很好地提出,但可以重复:

如何在Visual Studio 2013中启用汇编语言支持

虽然,在那里选择的答案不能解决我的问题。 ilovecpp的答案就是诀窍:

也许这会有用:

右键单击file_name.asm(在解决方案资源管理器中)属性->配置属性->常规->项目类型选择Microsoft宏汇编程序

一旦启用,一切编译就可以了。 您可以将MASM编译为DLL,只需执行一个额外的步骤。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM