D8048:无法使用/ ZW选项编译C文件'openssl \ applink.c'

时间:2012-02-16 02:51:38

标签: c++ .net openssl windows-8 microsoft-metro

我正在尝试在我的城域网应用程序中使用OpenSSL。我创建了一个C ++ WinRTComponent并在此组件下有openssl文件

但是,当我尝试编译项目时,我收到以下错误:     D8048: cannot compile C file 'openssl\applink.c' with /ZW option

任何人都可以告诉我如何解决这个问题才能让我的项目进行编译?

如果您需要任何其他信息来帮助我,请告诉我。

谢谢,

1 个答案:

答案 0 :(得分:20)

错误消息正是它所说的 - VC ++不支持C ++ / CX扩展 - 使用/ ZW编译器切换 - 在编译为C的文件中启用(这有点意义,因为这些扩展是面向对象的)。

您看到这一点的原因是,默认情况下,Metro C ++项目中的所有文件都是使用/ ZW编译的。不幸的是,这也适用于.c文件,即使它实际上并不适用于它们。您需要的是有选择地为这些文件禁用扩展。您可以通过右键单击 - >来完成此操作。解决方案资源管理器中文件或选定文件的属性。在“属性页”对话框中,导航到C / C ++ - >常规,并查找“启用Windows运行时扩展”。