INF: OLE Keys and Values in the Registration Database

ID Number: Q83557

3.10

WINDOWS

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

application sends commands using the OleExecute function.

Additional reference words: 3.10