描述应用程序、类型库和自动化对象的注册表文件必须合并到 Windows 系统注册表中,才能使 DLL 中的组件可访问。链接 COM DLL 和单独的 ObjectARX 应用程序需要执行其他步骤。以下各节介绍了这些步骤: 准备独立于 ObjectARX 应用程序的 COM DLL
..\..\..\..\lib\rxapi.lib ..\square\ReleaseEnt\square.libetc. 保存项目属性设置并关闭对话框。 生成并注册 COM DLL,如下一过程所述。 生成和注册组件服务器
REGEDIT
; This .REG file may be used by your SETUP program.
; If a SETUP program is not available, the entries below will be
; registered in your InitInstance automatically with a call to
; CWinApp::RegisterShellFileTypes and
; COleObjectFactory::UpdateRegistryAll.
HKEY_CLASSES_ROOT\TypeLib\{800F70A1-6DE9-11D2-A7A6-0060B0872457}
HKEY_CLASSES_ROOT\TypeLib\{800F70A1-6DE9-11D2-A7A6-0060B0872457}
\1.1 = AsdkSquareLib 1.0 Type Library
HKEY_CLASSES_ROOT\TypeLib\{800F70A1-6DE9-11D2-A7A6-0060B0872457}
\1.1\0\win32=
E:\TEMP\square\AsdkSquareLib\Debug\AsdkSquareLib.dll
HKEY_CLASSES_ROOT\TypeLib\{800F70A1-6DE9-11D2-A7A6-0060B0872457}
\1.1\9\win32 =
E:\TEMP\square\AsdkSquareLib\Debug\AsdkSquareLib.dll
HKEY_CLASSES_ROOT\CLSID\{800F70AE-6DE9-11D2-A7A6-0060B0872457} =
AsdkSquareWrapper Class
HKEY_CLASSES_ROOT\CLSID\{800F70AE-6DE9-11D2-A7A6-0060B0872457}
\InProcServer32 =
E:\TEMP\square\AsdkSquareLib\Debug\AsdkSquareLib.dll
HKEY_CLASSES_ROOT\Interface\{800F70AD-6DE9-11D2-A7A6-0060B0872457}
= IAsdkSquareWrapper Interface
HKEY_CLASSES_ROOT\Interface\{800F70AD-6DE9-11D2-A7A6-0060B0872457}
\TypeLib = {E3D2C633-69C9-11D2-A7A2-0060B0872457}
HKEY_CLASSES_ROOT\Interface\{800F70AD-6DE9-11D2-A7A6-0060B0872457}
\ProxyStubClsid32 = {00020424-0000-0000-C000-000000000046}
HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\ObjectDBX\R24.0\ActiveXCLSID
\AsdkPoly = {800F70AE-6DE9-11D2-A7A6-0060B0872457}
有关 REG 文件的详细信息,请参阅创建注册表文件。 从资源管理器运行 REG 文件。 注意:依赖于外部 ObjectDBX 或 ObjectARX 服务器 DLL 的应用程序必须确保服务器在 AutoCAD 中正确加载。支持进程外环境(如 Visual Basic)的单独 COM DLL 通常将此责任委托给其客户端应用程序。但是,仅支持进程内 AutoCAD 客户端的组合 COM DLL 可以在函数中使用 ObjectARX API,以保证加载必要的服务器。ObjectARX 向导的 COM 服务器选项提供此功能。DllMain
|
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )
GMT+8, 2024-5-19 15:25
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.