家居装修知识
模具知识|AUTOCAD的注册表详解
2017-02-20  浏览:76
模具之家讯:- Overview.

The AutoCAD registry is composed of three main sections. The HKEY_CLASS_ROOT

section contains all the information for the ActiveX automation, as well as file

descriptor. This section does not need in any case and at any time to be

modified by a third party application. This section is and must stay

instanciated by the AutoCAD installer. However, in Mechanical Desktop and

AutoCAD r14.01, there is a bug in the installer which can cause problem for the

Automation part. This bug (and solution will be described later in that

document).
For the two other sections, we have to be careful on which system and

configuration the user is working on. Windows 95/98 differ from Windows NT in

term of permission per user, to allow access to the registry at a given user.
But in short, the HKEY_LOCAL_MACHINE section contains all the default

information AutoCAD needs to initialized itself for a new NT login user, as well

it contains the ARX applications demand loading information.
On another hand, the HKEY_CURRENT_USER contains the default settings and

profiles for a given NT login user. (note that Windows 95/98 has only one common

login user).
- HKEY_CLASS_ROOT.
As said before, you should not manipulateormodify that section yourself.

Except for fixing the AutoCAD r14.01 installer bug, in case it occurs on your

computer. Most of the time that bug does not show,oris not showing up on a

target computer, because the AutoCAD ActiveX server is not used. But to fix the

problem, you just need to apply the following .REG file on the computer,orto

integrate the needed changes in your installer.
>>>>>>>>>>>>>

REGEDIT
HKEY_CLASSES_ROOT\Interface\{372FA490-600C-11CF-93EB-0800099EB3B7} =

IAcadApplication

HKEY_CLASSES_ROOT\Interface\{372FA490-600C-11CF-93EB-0800099EB3B7}\TypeLib =

{9B5492B0-EC9A-11CE-935A-0800099EB3B7}
HKEY_CLASSES_ROOT\Interface\{9B5492B1-EC9A-11CE-935A-0800099EB3B7} =

IAcaddocument

HKEY_CLASSES_ROOT\Interface\{9B5492B1-EC9A-11CE-935A-0800099EB3B7}\TypeLib =

{9B5492B0-EC9A-11CE-935A-0800099EB3B7}
HKEY_CLASSES_ROOT\Interface\{24B8A4E0-432A-11D0-A893-0800091B9B14} =

IAcadPreferences

HKEY_CLASSES_ROOT\Interface\{24B8A4E0-432A-11D0-A893-0800091B9B14}\TypeLib =

{9B5492B0-EC9A-11CE-935A-0800099EB3B7}

<<<<<<<<<<<<
- HKEY_LOCAL_MACHINE
The entry key in that section for AutoCAD is located at:
HKEY_LOCAL_MACHINE\Software\Autodesk\AutoCAD\R14.0\
Under that key, you will find a value named 'CurVer' which contains the last

instalLED and default AutoCAD identifier in form of:
ACAD-nnnnnnn:nnnnnnnn
This identifier is used to identify a given AutoCAD on a platform where there is

multiple AutoCAD installed. Having that identifier, you can easily find out

which AutoCAD will be used by the system, in case you double-click on a DWG

file,orif you launch AutoCAD via an ActiveX client executable.
However, it does not mean this will always be that AutoCAD which is going to be

used every time. A user can launch AutoCAD from the 'Start Menu', and then this

identifier is useless. For your information, an ObjectARX application can

retrieve the used identifier with the 'acrxProductKey()' function.
Ok. Having that identifier, we can now go further in the AutoCAD registry

structure. So under key:
HKEY_LOCAL_MACHINE\Software\Autodesk\AutoCAD\R14.0\\
you will find some other values which are used by AutoCAD to create the AutoCAD

HKEY_CURRENT_USER entries when a new login user start AutoCAD the first time.

Note that the AutoCAD installer does not create anything in the

HKEY_CURRENT_USER section at installation time, and so needs the followings

entries to be able to initialize itself at startup. We will see later that it is

important for your application to do this as well.
So here is the list of value, their type and their usage:
ACAD - STRING - "Default AutoCAD search PATH"

AcadLocation - STRING - "ACAD.EXE path"

LangAbbrev - STRING - "Language of the installed AutoCAD (2 letters code)"

Language - STRING - "Language of the installed AutoCAD"

LocaleId - STRING - "Microsoft Language identification code"

NetSupport - STRING - "ADLM support (ie: solution 19475)"

ProductId - STRING - "Product ID"

ProductName - STRING - "Product Name"

Release - STRING - "Release"

SerialNumber - STRING - "Serial Number"

VBAComponents - DWORD - Microsoft VBA components (reserved)

VBALanguage - DWORD - Microsoft Language identification code

VBAVersion - DWORD - Microsoft VBA version (reserved)
The only interesting value is ACAD, and at least this is the only one used by

AutoCAD to create a new login user HKEY_CURRENT_USER section when started the

first time.
The 'Applications' sub-section contains the ARX application demand loading

information. This section should be the only section your application (or

installer) should modify. Here is the structure, you should follow:
HKEY_LOCAL_MACHINE\Software\Autodesk\AutoCAD\R14.0\\Applications\
key: MyApp\

value: LOADCTRLS - DWORD - Demand load type

value: REGPATH - STRING - "PATH in the registry to the application registry

section"
Sample:
DcgApplication\

LOADCTRLS - 0x02

REGPATH - "\\HKEY_LOCAL_MACHINE\Software\DcgCompany\DcgApplication"
The LOADCTRLS may be a bit wise or'd combination of any of the following:
konProxyDetection = 0x01, load the ARX application when objects of custom

classes it

controls are loaded via drawing open, dxfin,

insert, etc.

konAutoCADStartup = 0x02, load the ARX application when AutoCAD starts up

konCommandInvocation = 0x04, load the ARX application whenever an unknown

command is executed

that it has a registry entry for

konLoadRequest = 0x08, allow loading of the ARX application via the

AcRxDynamiclinker::loadApp() method

kLoadDisabled = 0x10 do not demand load the ARX application for any

reason
The other sub-sections like 'AutodeskApps' and 'Reinstall' should not be

modified by a third party. But the 'AutodeskApps' sub-section is useful to help

you understanding the structure you need to implement for demand loading of your

ARX application as it contains the demand load information for the Autodesk ARX

application for demand load. Here is a short summary of what you need:
key: Commands\

value: InternationalCmd - STRING - "LocalizedCmd"

... other commands ...
key: Groups\

value: GroupName - STRING - "GroupName"
key: Loader\

value: MODULE - STRING - "Full PATHNAME to the ARX file on the hard-drive"
key: Name\

value: AppName - STRING - "Description string"
Sample:
HKEY_LOCAL_MACHINE\Software\DcgCompany\DcgApplication\Commands\

_MYCOMMAND - "MACOMMANDE"

_MY2NDCMD - "MA2NDCMD"
HKEY_LOCAL_MACHINE\Software\DcgCompany\DcgApplication\Groups\

DCGGROUP - "DCGGROUP"
HKEY_LOCAL_MACHINE\Software\DcgCompany\DcgApplication\Loader\

MODULE - "c:\Program Files\DcgCompany\DcgApplication\DcgApp.arx"
HKEY_LOCAL_MACHINE\Software\DcgCompany\DcgApplication\Name\

DcgApp - "This is my favorite Dcg Application"
In R14.x releases the group sub-section is not used, but it will be in future.

The Commands sub-section is used only if the application is registered for

demand loading on command invocation. And the Name sub-section is used only if

the application is registered for demand loading in load request.
- HKEY_CURRENT_USER
The HKEY_LOCAL_MACHINE seen before, can be manipulated at installationor

running time by a third party. But his is possible only if the login user has

the right permissions to do this. Most of the time, if using the correct

settings, anybody can read and write in that section. For the HKEY_CURRENT_USER

section this is the same. However, that section is accessible only by the login

user, and might not be accessible at installation time by the computer

administratororexample.
This restriction applies only for NT users, as Windows 95/98 does not have the

multiple user feature. But as AutoCAD runs on all above platform, your

applications should work fine on all of them as well.
So to work on all platform, and to be sure your application will work fine for a

new NT login user, your installer should create entries in the

HKEY_LOCAL_MACHINE only. And you application should be able to initialize itself

at startup time using these entries to create and/or modify the AutoCAD entries

and profiles (ie solutions 1583, and 1564).
A complete description of the HKEY_CURRENT_USER section is useless as that

section contains many information about editor settings and configurations.
The two main interests is that 'Profiles' are defined in that section. The

default profile used by AutoCAD is coded in the default value of:
HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R14.0\\Profiles
and that you should not modify these information directly in the registry while

AutoCAD is running because then they will not be synchron with the ones AutoCAD

has loaded when started. Instead, when AutoCAD is running you can use the

ActiveX 'preferences' object to make some changes (ie solution 1583)
- Sample
On the ADN CD, and ADN WEB Site, Developer Consulting Group has written a sample

named 'DdModify' (command 'DCMOD') which implements an installer and an ARX-MFC

application which demonstrates all what I have said in that document. I strongly

suggest you to have a look to it...
To summarize that sample, the installer install the ARX application on the

hard-drive and register it for demand loading on command invocation. And the ARX

application initializes itself the first time it is loaded in a given AutoCAD

for a given Windows login user, and a given AutoCAD profile.

HKEY_CLASSES_ROOT\Interface\{372FA490-600C-11CF-93EB-0800099EB3B7}\ProxyStubClsi

d = {00020424-0000-0000-C000-000000000046}

HKEY_CLASSES_ROOT\Interface\{372FA490-600C-11CF-93EB-0800099EB3B7}\ProxyStubClsi

d32 = {00020424-0000-0000-C000-000000000046}

HKEY_CLASSES_ROOT\Interface\{9B5492B1-EC9A-11CE-935A-0800099EB3B7}\ProxyStubClsi

d = {00020424-0000-0000-C000-000000000046}

HKEY_CLASSES_ROOT\Interface\{9B5492B1-EC9A-11CE-935A-0800099EB3B7}\ProxyStubClsi

d32 = {00020424-0000-0000-C000-000000000046}

HKEY_CLASSES_ROOT\Interface\{24B8A4E0-432A-11D0-A893-0800091B9B14}\ProxyStubClsi

d = {00020424-0000-0000-C000-000000000046}

HKEY_CLASSES_ROOT\Interface\{24B8A4E0-432A-11D0-A893-0800091B9B14}\ProxyStubClsi

d32 = {00020424-0000-0000-C000-000000000046}
模具之家为您提供最全面的塑胶,塑料,模具,模具设计,塑胶模具品牌的装修知识点和各种塑胶模具的导购与在线购买服务,拥有最便宜的塑胶模具价格和最优质的售后服务,敬请登陆模具之家:http://muju.jc68.com/
更多»您可能感兴趣的文章:
更多»有关 模具 的产品:
广州模具货架,重型货架,带抽屉模具架

广州模具货架,重型货架,带抽屉模具架

价格:3200.00/套

广州模具架

广州模具架

价格:3800.00/套

品质优8407模具钢圆钢【一胜百】

品质优8407模具钢圆钢【一胜百】

价格:到店咨询

S136H模具钢板 大圆棒

S136H模具钢板 大圆棒

价格:到店咨询

718S板【一胜百】塑胶模具钢

718S板【一胜百】塑胶模具钢

价格:到店咨询

20CrMnTi齿轮钢【塑胶模具钢】板

20CrMnTi齿轮钢【塑胶模具钢】板

价格:5.30/千克

易博仕铝方通吊顶木纹铝方通厂家直销

易博仕铝方通吊顶木纹铝方通厂家直销

价格:7.50/米

易博仕勾搭式垂帘铝挂片吊顶天花

易博仕勾搭式垂帘铝挂片吊顶天花

价格:8.50/米

供应易博仕氟碳铝单板幕墙铝单板厂家直销

供应易博仕氟碳铝单板幕墙铝单板厂家直销

价格:198.00/平方米

供应易博仕氟碳铝单板幕墙铝单板厂家直销

供应易博仕氟碳铝单板幕墙铝单板厂家直销

价格:198.00/平方米

易博仕铝天花吊顶明架跌级铝扣板600*600厂家直销

易博仕铝天花吊顶明架跌级铝扣板600*600厂家直销

价格:38.00/平方米

供应易博仕c型铝条扣 防风铝条扣天花厂家直销

供应易博仕c型铝条扣 防风铝条扣天花厂家直销

价格:38.00/平方米

  • 头条资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 建材风水 木板之家 电工之家 壁纸之家 净化之家 安防之家 水暖之家 洁具之家 窗帘头条 家饰之窗 老姚之家 灯饰之家 电气之家 全景头条 陶瓷之家 照明之家 防水之家 防盗之家 博一建材 卫浴之家 区快洞察 建材 郑州建材 周口建材 信阳建材 商丘建材 南阳建材 漯河建材 许昌建材 濮阳建材 焦作建材 新乡建材 鹤壁建材 安阳建材 洛阳建材 开封建材 武汉建材 天门建材 企业之家 驻马店建材 三门峡建材 平顶山建材 神农架建材 建材之家 720全景
    (c)2015-2017 BO-YI.COM SYSTEM All Rights Reserved