如何创建COM对象

时间:2017-10-02 08:36:54

标签: go dll com

如何使用golang创建对象?虽然我已经通过regsvr32 dm.dll注册了这个dll,但我使用go-ole并报告了一个没有注册错误的类。

任何人都可以告诉我正确的代码。

ole.CoInitialize(0)

unknown, err := oleutil.CreateObject("dm.dmsoft")

if err != nil {
    log.Fatal(err)
}
dm := unknown.MustQueryInterface(ole.IID_IDispatch)

enter image description here

1 个答案:

答案 0 :(得分:1)

当你没有注册类时,这意味着COM dll或exe尚未注册,所以当你尝试实例化COM对象时,操作系统不知道在哪里找到.DLL / Exe。

对于使用regsvr32(C:\>regsvr32 {full path}dm.dll)注册DLL的情况,可执行文件通常使用命令行参数/ RegServer注册