Names an object in a process directory with a long name.
Use the CatalogRtHandleLong system call to put the object into an object directory. You specify the process in which to catalog the object, the object's handle, and a name for the object.
You can catalog the object in the thread's process or in any process for which you have the handle. Each process has an object directory, including the root process. To make an object accessible to all threads in the system, catalog it in the root process. Call GetRtThreadHandles to obtain the handle of the root process.
You can use any byte values except null in the name. You can catalog the object under several different names, all with the same handle, if your application needs this. The INtime kernel returns a status code if you try to catalog an object using a name already cataloged in the directory.
BOOLEAN CatalogRtHandleLong(
    RTHANDLE hProcess,    // handle for RT process
    RTHANDLE hObject,     // handle for object to be cataloged
    LPSTR lpszLongName    // pointer to long object name
);
hProcess 
hObject 
lpszName 
A long name is encrypted and a short name based on a unique key is actually inserted in the process directory. use LookupRtHandleLong to find the handle using its long name.
There may be several entries for a single object in a directory, because the object may have several names. However, in a given object directory, only one object may be cataloged under a given name. If another thread is waiting, using LookupRtHandle, for the object to be cataloged, that thread is awakened when the entry is cataloged.
If the hProcess parameter refers to a reference object, then the hObject parameter must also refer to a reference object where both refer to objects on the same host.
TRUE 
FALSE 
E_OK 0x0000 
E_LIMIT 0x0004 
E_CONTEXT 0x0005 
E_EXIST 0x0006 
hObject or hProcess. 
E_TYPE 0x8002 
hProcess as an RT handle. 
E_PARAM 0x8004 
lpszName contains a string with a length of 0 (zero) or greater than 12. 
E_BAD_ADDR 0x800F 
lpszName is invalid. 
E_INVALID_ADDR 0x00E2 
| Versions | Defined in | Include | Link to | 
|---|---|---|---|
| INtime 7.1 | intime/rt/include/rtbase.h | rt.h | rt.lib |