OLE Keys and Values in the Registration Database

ID: Q83557

The information in this article applies to:

SUMMARY

The Registration Database is a system resource that was added to Windows at version 3.1. The Registration Database contains two types of strings: keys and values. All information regarding object linking and embedding (OLE) objects, and support for the StdFileEditing protocol, is stored in the Registration Database. This article describes the objects that support the StdFileEditing protocol and the related values stored in the Registration Database.

MORE INFORMATION

Because all OLE-related objects are members of the same class, all OLE-related keys start from a root key called HKEY_CLASSES_ROOT. A subkey is separated from the root key by a backslash (\) character. Information regarding an OLE object is kept in the Registration Database under a key that matches the object's class name.

The first subkeys from HKEY_CLASSES_ROOT are the OLE object's class name and the OLE server application's file extension.

   Key Name                        Required Value
   --------                        --------------

   HKEY_CLASSES_ROOT\<class_name>  Readable version of class name. For
                                   example "Excel 3.0 Worksheet"

   HKEY_CLASSES_ROOT\<.ext>        File extension associated with the
                                   class name.

The HKEY_CLASSES_ROOT\<class_name> key has two standard extensions to which additional subkeys are attached:

   HKEY_CLASSES_ROOT\<class_name>\protocol\StdFileEditing
   HKEY_CLASSES_ROOT\<class_name>\protocol\StdExecute

Additional subkeys attached to \protocol\StdFileEditing describe more specific OLE-related characteristics of the object. Each key name listed in the table below is a subkey of HKEY_CLASSES_ROOT\<class_name>\protocol\StdFileEditing. An asterisk (*) by the key name indicates that a value is optional.

   Key Name            Value                            Example
   --------            -----                            -------

   server              Full path to server executable   c:\schmoo.exe

   handler*            Full path to object-handler DLL  c:\schmooh.dll

   verb\0              Primary verb                     Edit

   verb\1*             Secondary verb                   Play

   verb\n*             N-ary verb                       Open, and so
                                                        forth

   SetDataFormats*     CSV string of data formats       Native, CF_BITMAP

   RequestDataFormats* CSV string of data formats       Native, CF_BITMAP

Verbs indicate the actions a user can perform on an object, such as play, edit, and open. Most graphical applications provide only the edit verb because editing is typically the only action supported for graphical data. The Windows 3.1 Sound Recorder supports two verbs, play and edit, where play is the primary verb and edit is the secondary verb. When a user double-clicks an object in a client application, the client invokes the primary verb for the object. (For a sound object, the Sound Recorder plays the sound.) The user accesses any other verbs through menu selections in the client application.

The \protocol\StdExecute\server key is an optional key. Its associated value is the path to the server application, similar to the server subkey of the StdFileEditing key. Windows uses the \protocol\StdExecute\server key to find the server when a client application sends commands using the OleExecute function.

Additional reference words: 1.00 KBCategory: kbole kbprg KBSubcategory: LeOneSvr

Last Reviewed: February 17, 1995