IDs PDF Print E-mail

All project elements have IDs (values, resources, resource types, files). ID consists of two fields:
Name – string in Unicode;
Index – numeric value

ID value is displayed as: Name[#Index]. For example, ID of the RT_RCDATA[#10] resource type consists of the name (RT_RCDATA) and index (10).

As a rule, the index is not displayed if its value is 0. For example, ID of the TABOUT resource consists of the name (TABOUT) and index (0).

Sometimes the name field can be empty. Then the index is displayed regardless of its value: [#0].

Composite IDs are used to specify the location of an element in the project. In composite IDs, the owner ID is indicated before the object ID and separated by dots. For example:
RT_RCDATA[#10].TABOUTFORM.AboutForm.btClose.Height

As a rule, ID fields correspond to resource attributes in a localized file. However there are exceptions when name fields are created automatically by index, which ensures precise identification of resources. Below you can find examples of such exceptions:

  1. Creation of a name for a standard resource type in PE files: ID with index 1 is assigned the name RT_CURSOR, ID with index 2 is assigned the name RT_BITMAP, etc. The resulting names are: RT_CURSOR[#1], RT_BITMAP[#2], ... If a localized file has a resource with a name that is the same as a standard one (types of resources and resources in PE files can have a name or an index), then the ID will be displayed without index: RT_CURSOR, RT_BITMAP, etc.
  2. Creation of string names RT_STRING[#6] from DRC files of Delphi/C++ Builder. Strings of this resource type in PE files are identified by an index. Once a DRC file is connected, the name field is completed. Let’s say, for example, the original string had index 65297. After completion, the name field is: ComStrs_sTabFailGetObject[#65297].