我正在使用COM的几个项目上工作,但遇到了问题。我使用的是已编译和导入的外部.idl,因此我的项目中只有.idl库。
现在,当我编译仅包含该库的项目内部IDL时,在x32配置下不会生成dlldata.c文件。但是,如果我编译该项目,并且它是在x64配置下的.idls,则将生成dlldata.c文件,并且该项目可以正常运行。
我已经尝试过Visual Studio for MIDL的所有选项,但都无济于事。显然,我只能通过添加一个虚拟接口来解决此问题,这是我不想做的。
是否有另一种解决方案可以在不添加虚拟接口的情况下在x32配置下生成dlldata.c文件?
我找到了解决方案。似乎您对于外部.idls的预构建事件必须非常小心。甚至平台也很重要。使用/ env win32和/ env x64参数针对每种配置编译到MIDL分别解决了我的问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句