16,551
社区成员
发帖
与我相关
我的任务
分享
IRichEditOle* pOle = edit.GetIRichEditOle();
REOBJECT reobject;
reobject.cbStruct = sizeof(REOBJECT);
if (E_INVALIDARG == pOle->GetObject(i, &reobject, REO_GETOBJ_ALL_INTERFACES))
{ //正常应该返回 S_OK
AfxMessageBox(L"获取对象失败!");
return;
}
IDataObject *pDataObject;
if (S_OK != reobject.poleobj->GetClipboardData(0, &pDataObject))
{ //错误值有OLE_E_NOTRUNNING,E_NOTIMPL两种
AfxMessageBox(L"获取数据失败!");
return;
}
REOBJECT reobject;
reobject.cbStruct = sizeof(REOBJECT);
if (E_INVALIDARG == pOle->GetObject(i, &reobject, REO_GETOBJ_ALL_INTERFACES))
{ //正常应该返回 S_OK
AfxMessageBox(L"获取对象失败!");
return;
}
OleRun(reobject.poleobj); //找了2个api,也不知道对不对
if (!OleIsRunning(reobject.poleobj))
{
AfxMessageBox(L"对象未运行!"); //程序直接来到这句
return;
}
IDataObject *pDataObject;
if (OLE_E_NOTRUNNING == reobject.poleobj->GetClipboardData(0, &pDataObject))
{ //错误值有OLE_E_NOTRUNNING,E_NOTIMPL两种S_OK !
AfxMessageBox(L"获取数据失败!");
return;
}