bionstreet.blogg.se

Atomic table
Atomic table














Although applications do not interact with the user atom table directly, they call several APIs-such as RegisterClass, RegisterWindowMessage, and RegisterClipboardFormat-that add entries to the user atom table.

#Atomic table windows

The user atom table is used for a small number of scenarios internal to win32k for example, windows module names, well known strings in win32k, OLE formats, etc. In addition to the global atom table, the user atom table is another system atom table that is also shared across all processes. This technique prevents conflicts with the names of formats defined by the system or by other applications, and makes the identifiers (atoms) for the messages or formats available to the other applications. Any application that has the atom can obtain the string it identifies by querying the global atom table.Īn application that defines a private DDE-data format for sharing data with other applications should place the format name in the global atom table.

atomic table

When an application places a string in the global atom table, the system generates an atom that is unique throughout the system. The global atom table is available to all applications. The following topics are discussed in this section. An application adds atoms to this atom table using the RegisterClass or RegisterClassEx function. Also, registered classes are stored in an internal atom table used by the system. An application adds atoms to this atom table using the RegisterClipboardFormat function. For example, registered clipboard formats are stored in an internal atom table used by the system. However, the application uses these atoms when calling a variety of functions. The system uses atom tables that are not directly accessible to applications. The partner uses the atoms to obtain the strings from the atom table.Īpplications can use local atom tables to store their own item-name associations.

atomic table

Rather than passing actual strings, a DDE application passes global atoms to its partner application. For example, Dynamic Data Exchange (DDE) applications use the global atom table to share item-name and topic-name strings with other applications. Each atom table serves a different purpose. The system provides a number of atom tables. A string that has been placed in an atom table is called an atom name. An application places a string in an atom table and receives a 16-bit integer, called an atom, that can be used to access the string. An atom table is a system-defined table that stores strings and corresponding identifiers.














Atomic table