Register a Logical Application Name

Level

Requirement

Applies to

ObjectARX, .NET and ObjectDBX modules

Register a logical application name in the AutoCAD section of the registry. Optionally, consider adding a unique prefix to your logical application name.

Example for ObjectARX applications:

HKEY_LOCAL_MACHINE
  SOFTWARE
    Autodesk
      AutoCAD
        R24.0
          ACAD-4101:409
            Applications
              AsdkPolyCAD
              WXYZBathroom
              ABCDAnotherApp
Note: The registry key ACAD-4101:409 is specific to the AutoCAD 2021 - English release. The value ACAD-4101 will vary based on which AutoCAD-based vertical is installed, and 409 represents the language that is installed.
Consider these scenarios when registering your logical application name. If your application:

Example for Object Enablers (ObjectDBX modules):

HKEY_LOCAL_MACHINE
  SOFTWARE
    Autodesk
      ObjectDBX
        R24.0
          Applications
            AsdkPolyCADObj
            WXYZBathroomObj
            ABCDAnotherAppObj

In the examples above, the application "AsdkPolyCAD" is from Autodesk, while the other two applications are from different vendors. ("WXYZBathroom" is the example application used in this document.) The case as you enter it is retained, but is ignored for lookups and duplication checks.

A logical application name should be bound to specific file paths in the registry. You may want to define more than one logical application name. One name might span all versions and locales, while others might distinguish between versions and locales as needed.

Using the logical application name as your registered service name is suggested.

For example:

acrxRegisterService(ACRX_T("WxyzBathroom"))

The application name is the last parameter in the ACRX_DXF_DEFINE_MEMBERS macro. It is a string that can have the following elements, separated by pipe characters (|):

When AutoCAD loads a drawing containing custom objects that cannot be mapped to an implementing application, it displays an alert box to notify the user.

For example, given the application name string

AsdkPolyOBJ2.0\
|Product Desc:     PolyCAD ARX App For Polygon Entity\
|Company:          Autodesk,Inc.\
|WEB Address:      www.autodesk.com);

AutoCAD would display

Missing Application:  AsdkPolyOBJ2.0
Product Desc:         PolyCAD ARX App For Polygon Entity
Company:              Autodesk,Inc.
WEB Address:          www.autodesk.com

Other applications can also extract elements from the application name string. If there is no pipe character (|), the entire string is assumed to be the logical application name. For example, the application name string

AsdkPolyOBJ

would be displayed as

Missing Application:  AsdkPolyOBJ

This message has less information about the product than the earlier one.

The application name string should include information such as a phone number or website address to allow users to contact you.

For example, for class WxyzVanity, you would supply the following application name:

ACRX_DXF_DEFINE_MEMBERS(WxyzVanity, AcDbEntity,
AcDb::kDHL_CURRENT, AcDb::kMReleaseCurrent,0,WXYZVANITY,
WxyzBathroom|ePlumber 2020|Millenium Bathrooms Inc.
|email: plumber@autodesk.com)