CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2022 开发者帮助

获取自定义类的 CLSID

2024-5-18 18:50| 发布者: admin| 查看: 86| 评论: 0|原作者: admin|来自: AutoCAD

获取自定义类的 CLSID

COM 对象是通过使用 的调用创建的,用于标识对象类型。为了检索给定的派生对象,应用程序使用其函数。这是签名CoCreateInstance()CLSIDCLSIDAcDbObjectgetClassID()getClassID():

// Get corresponding COM wrapper class ID.
//
virtual Acad::ErrorStatus getClassID(CLSID* pClsid) const;

此函数在级别上定义。对于将其派生到 的所有其他类,它都会被重写,并由不同的 COM 对象类型表示。因此,如果创建派生自 的自定义实体,并且不重写 ,则此函数返回 for 。这意味着自定义实体将至少具有基本级别功能,即使您不为它们提供 COM 支持。AcDbObjectAcDbObjectAcDbEntitygetClassID()CLSIDAcadEntity

要获取给定派生类名,AutoCAD 会在注册表中搜索将类名与其值相关联的条目。CLSIDAcDbObjectCLSID

注册表布局如下所示:

HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\
    ObjectDBX\
        R24.1\
            ActiveXCLSID\
                AcRxClassName\REG_SZ:
                    {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}

在上面的示例中,表示 -派生类的名称(例如,)。AcRxClassNameAcDbObjectAcDbMyObject

父主题:

  1. 创建 COM 对象

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1   苏公网安备32011402011833)

GMT+8, 2025-1-19 06:49

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部