在vs2008中打开,要经过一次代码转换,转换后的项目打开后生成不了
遇到的问题如下
IInputObjectSitePtr 找不到定义
首先确认安装了正确的platform sdk (我用的是 sdk5.0) 然后 在工具-》选项中
对项目和解决方案-》vc++目录
添加include 和lib 目录 并确保位置在最上面
然后打开"项目"-》KBBar属性
配置属性->常规 ATL的使用 改为Static Link to ATL因为默认项目不支持ATL
之后生成还会发生下面的错误
error LNK2019: unresolved external symbol "wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *)" (
?ConvertStringToBSTR@_com_util@@YGPA_WPBD@Z)
参照下面的链接讨论非常详细
有好几种办法,我用下面的
还是"项目"-》KBBar属性
配置属性-》链接器-》输入
加入comsuppwd.lib (用于debug模式)
release 要换成comsupp.lib
或者也可以加入下面的几句预编译语句(没有实验)
#ifdef
_DEBUG
# pragma
comment
(
lib
,
"comsuppwd.lib"
)
#else
# pragma comment(lib, "comsuppw.lib")
#endif
# pragma
comment
(
lib
,
"wbemuuid.lib"
)
写在stdafx.h 的#pragma once 下面
修改之后,生成成功
打开新的IE 在"查看"->工具栏中会出现"KBBar"
转载于:https://blog.51cto.com/122437/143662