我正在尝试将一些现有代码移植到 WP8 并遇到了问题。我要移植的代码使用在 comdef.h 中定义的智能指针,但由于某种原因,当我尝试包含 comdef.h 时,出现以下错误。
comdef.h(25):致命错误 C1083:无法打开包含文件:'olectl.h'
我了解错误的含义,并且在我的机器上的 WP8 SDK 包含路径中似乎没有“olectl.h”的痕迹。还有其他人有这个问题吗,我尝试“修复”我安装的“Visual Studio 2012 Express for Windows Phone”
我发现了一些似乎包含 comdef.h 的代码,并且通过根本不使用宏并明确使用宏将扩展为的代码,解决了本文末尾的链接所讨论的丢失宏问题。(这是我想做的代码:https ://devel.nuclex.org/framework/browser/graphics/Nuclex.Graphics.Native/trunk/Source/Rasterization/Direct3D11/Direct3D11Api.h?rev=1782 )
有没有其他人经历过这种情况,或者安装了 SDK 的人可以尝试在某处包含 comdef.h 以查看它是否适用于他们。
谢谢。