using namespace Dm;
CLSID clsid; //COM物件類標示符
void InitTLDm()
{
if (CLSIDFromProgID(OLESTR("dm.dmsoft"), &clsid) != S_OK)
{
WinExec("C:\\Users\\Administrator\\source\\repos\\QtConsoleApplication2\\Debug\\注冊大漠插件到系統.bat", SW_HIDE); //運行注冊插件命令
}
if (SUCCEEDED(CoInitialize(NULL)))
{
HRESULT hr = CLSIDFromProgID(OLESTR("dm.dmsoft"), &clsid);
HRESULT Hr = CoCreateInstance(clsid, NULL, CLSCTX_INPROC_SERVER,
__uuidof(Idmsoft), (LPVOID*)&dm);
if (SUCCEEDED(Hr))
{
CoFreeUnusedLibraries(); //卸載不用的COM服務
}
}
else
{
AfxMessageBox("初始化COM組件失敗!");
}
dm->Release();
}
Idmsoft 引數是大漠dm.LL 內定義的類物件 我在我的專案中 加載了 dm.h
在dm.h 中的宣告如下
namespace Dm {
class DM_EXPORT Idmsoft : public QAxObject
{
public:
explicit Idmsoft(IDispatch *subobject = nullptr, QAxObject *parent = nullptr);
/*
但是 我 在填寫到 CoCreateInstance 第四個引數的時候一直報錯
該怎么修改啊 求指導
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/103046.html
標籤:C++ 語言
上一篇:c++ "%.3f%c%.3f=%.3f" 提示運算式必須含型別別 怎么解決
下一篇:我這個錯哪了
