D2D 创建IWICImagingFactory 总返回空指针 在线等,急::>_<::

wyzwzwd 2016-12-16 12:26:48
高手们,代码如下:
CoInitialize(NULL);
CoCreateInstance(
CLSID_WICImagingFactory,
nullptr,
CLSCTX_INPROC_SERVER,
IID_IWICImagingFactory,
(LPVOID*)&m_pWicImagingFactory
);

CoCreateInstance创建失败,m_pWicImagingFactory的地址返回一直使空,为啥啊?怎么解决?
...全文
680 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dobzhansky 2016-12-19
  • 打赏
  • 举报
回复
两个 vs 使用的 windows sdk 不一样
Dobzhansky 2016-12-19
  • 打赏
  • 举报
回复
vs2013 转到定义 CLSID_WICImagingFactory 看看,有两个,guid 不一样。
2010 是对的。2013就使用那个 1
赵4老师 2016-12-19
  • 打赏
  • 举报
回复
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下; 所以要注意: 在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。 且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
向立天 2016-12-18
  • 打赏
  • 举报
回复
引用 7 楼 wyzwzwd 的回复:
[quote=引用 6 楼 xianglitian 的回复:] 参考http://jingyan.baidu.com/article/c910274bfea203cd361d2db9.html
还有一个情况就是,同样代码,VS2013返回空指针,但是VS2010却可以用,这个情况能有什么提示么?(我的操作系统是Win7 SP1 64位的)[/quote] 看看工程属性是不是一样的,如果不是把2013的工程设置成和2010一样
wyzwzwd 2016-12-17
  • 打赏
  • 举报
回复
引用 9 楼 xianglitian 的回复:
[quote=引用 8 楼 wyzwzwd 的回复:] [quote=引用 6 楼 xianglitian 的回复:] 参考http://jingyan.baidu.com/article/c910274bfea203cd361d2db9.html
安装参考的方法comdlg32.ocx 注册成功,但在vs2013中依旧没有任何改观,同样的问题,大神们,咋办啊? @向立天 @oyljerry [/quote]别用2013了[/quote] 我以为我会哭,于是我哭了...项目要求VS2013,神啊,救救我吧!
向立天 2016-12-17
  • 打赏
  • 举报
回复
引用 8 楼 wyzwzwd 的回复:
[quote=引用 6 楼 xianglitian 的回复:] 参考http://jingyan.baidu.com/article/c910274bfea203cd361d2db9.html
安装参考的方法comdlg32.ocx 注册成功,但在vs2013中依旧没有任何改观,同样的问题,大神们,咋办啊? @向立天 @oyljerry [/quote]别用2013了
wyzwzwd 2016-12-17
  • 打赏
  • 举报
回复
引用 6 楼 xianglitian 的回复:
参考http://jingyan.baidu.com/article/c910274bfea203cd361d2db9.html
安装参考的方法comdlg32.ocx 注册成功,但在vs2013中依旧没有任何改观,同样的问题,大神们,咋办啊? @向立天 @oyljerry
wyzwzwd 2016-12-16
  • 打赏
  • 举报
回复
引用 6 楼 xianglitian 的回复:
参考http://jingyan.baidu.com/article/c910274bfea203cd361d2db9.html
还有一个情况就是,同样代码,VS2013返回空指针,但是VS2010却可以用,这个情况能有什么提示么?(我的操作系统是Win7 SP1 64位的)
向立天 2016-12-16
  • 打赏
  • 举报
回复
参考http://jingyan.baidu.com/article/c910274bfea203cd361d2db9.html
wyzwzwd 2016-12-16
  • 打赏
  • 举报
回复
@oyljerry @向立天 版主大神,问题如上楼,求救
wyzwzwd 2016-12-16
  • 打赏
  • 举报
回复
引用 2 楼 oyljerry 的回复:
这个对应的com组件在系统中注册没,用regsvr32注册一下
注册那个呀?我是win7系统,注册哪个OCX或者DLL啊? 查了很多资料,都说注册,注册什么,还请大神们详述啊。
向立天 2016-12-16
  • 打赏
  • 举报
回复
从错误信息上看是注册的问题
oyljerry 2016-12-16
  • 打赏
  • 举报
回复
这个对应的com组件在系统中注册没,用regsvr32注册一下
wyzwzwd 2016-12-16
  • 打赏
  • 举报
回复
CoCreateInstance的返回值是:REGDB_E_CLASSNOTREG Class not registered 但这该咋办。。。

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧