vc6.0 ole excel CreateDispatch失败???求大神帮忙啊

qq437206031 2012-04-30 11:26:58
if (!m_pObjApp->CreateDispatch("{00020820-0000-0000-C000-000000000046}"))
{
AfxMessageBox(IDS_STRRT_EXCEL_FAIL);
return;
}
oleviewer结果的链接:
http://b153.photo.store.qq.com/psb?/V14IgB9b0Ej1e9/vCpwh10OYYL6N7k05UUTb3dVv44ARlOvHG*tspiH6z8!/b/YYcoO1s0KwAAYgCUOVsCKgAA

用m_pObjApp->CreateDispatch("Excel.Application")得到相同结果,EXCEL已经安装成功了,oleviewer中有clsid,为什么CreateDispatch失败啊???
Warning: CreateDispatch returning scode = REGDB_E_CLASSNOTREG ($80040154).
...全文
325 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq437206031 2012-05-04
  • 打赏
  • 举报
回复
最后无语的是DEbug版本不能用,Release版本又能用。。。。
ReverseEngineering 2012-05-02
  • 打赏
  • 举报
回复
我在此版蹭分,蹭蹭了一个星星,楼主,务必让我蹭点。

我对此帖的建议是:不要用VC6了!老古董了!很多问题!网上多的是2010.
fishion 2012-05-02
  • 打赏
  • 举报
回复
if (!m_pObjApp->CreateDispatch("Excel.Application"))


CLSID不是这样用的,你得用CLSIDFromProgID得到CLSID来用
qq437206031 2012-05-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

if (!m_pObjApp->CreateDispatch("Excel.Application"))


CLSID不是这样用的,你得用CLSIDFromProgID得到CLSID来用
[/Quote]
就是这样失败了,才用CLSID。。。
qq437206031 2012-05-01
  • 打赏
  • 举报
回复
在公司可以用的都是ole office 12下的excel。。。在家里就不能用了。。。重新ole了也不行,重装了excel 2007也不行。。。一直都是REGDB_E_CLASSNOTREG错误
qq437206031 2012-04-30
  • 打赏
  • 举报
回复
有OLE初始化啊
if(!AfxOleInit())
{
AfxMessageBox("ERROR INIT");
}
贪玩的老鼠 2012-04-30
  • 打赏
  • 举报
回复
AfxInitOle
hdg3707 2012-04-30
  • 打赏
  • 举报
回复
是不是没有OLE初始化,在工程初始化函数里加上:AfxInitOle();试试

3,248

社区成员

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

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