mfc打开显示word文档出错,请各位高手解答!!!
void CEmbWordView::EmbWord()
{
CEmbWordCntrItem* pItem = NULL;
CEmbWordDoc* pDoc = GetDocument();
pItem = new CEmbWordCntrItem(pDoc);
CLSID clsid = {0};
CLSIDFromProgID(L"World.Document",&clsid);//调试时候,这行代码运行过后clsid为空值
pItem->CreateNewItem(clsid);
pItem->DoVerb(OLEIVERB_SHOW,this);//执行这条代码时候提示出错
}
我电脑上装了office 2007,可是程序执行过CLSIDFromProgID(L"World.Document",&clsid);代码后,clsid为空值,
执行pItem->DoVerb(OLEIVERB_SHOW,this);时报错,应该是clsid为空的原因,可是为什么clsid为空值啊,为什么得不到clsid,我的电脑上装了office 啊,另外,我又写了一个测试程序,如下:
void CEmbWordView::OnText()
{
_Application app; //定义一个WORD的应用对象
if(!app.CreateDispatch(_T("Word.Application"))) //启动WORD
{
AfxMessageBox(_T("居然你连OFFICE都没有安装吗?"));
return;
}
}
执行这个函数时运行正常,而且观察程序管理器后发现word在后台运行着的,可是为什么EmbWord()总是运行不通过呢?求各位大神指教啊?