0

我正在使用 gsoap v 2.8 编写地狱程序并尝试在 Visual Studio 2010 中编译它。我想使用 stl-vector 功能。但是指令中有导入错误

#import "import/stlvector.h"

错误:

错误 C1083:无法打开类型库文件:'r:\work\vs2010\xmlme\xmlme\import\stlvector.h' 加载库 r:\work\vs2010\xmlme\xmlme\xmlme.h 时出错

和后果:

IntelliSense:无法打开源文件“R:/Work/VS2010/XmlMe/XmlMe/Debug/stlvector.tlh”r:\work\vs2010\xmlme\xmlme\xmlme.h

无法弄清楚 Intellisense 想从我这里得到什么。我将导入文件夹从 gsoap 目录复制到我的项目中,并按照我的想法正确引用它。

我的解决方案存档(链接可能过期)

更新:

我已经尝试了 wsdl2h 实用程序的 -s 参数以从 xmlme.h 文件中排除 stl 依赖项。现在我有类似的错误:

错误 C1083:无法打开类型库文件:soap12.h:加载库时出错。xmlme\xmlme.h

...产生同样奇怪的后果:

IntelliSense:无法打开源文件“XmlMe/Debug/soap12.tlh”\xmlme\xmlme.h

4

1 回答 1

0

问题是不要在项目中包含 XmlMe.h(使用 wsdl2h.exe 工具生成的文件)。它使用符合 soapcpp2 的语言(基于 C 而不是 C,这就是为什么 VS10 编译器在包含此类文件时会产生错误)。

您还需要包含 .nsmap 文件,例如在您的主函数定义文件中。

于 2013-03-31T15:29:30.113 回答