Index   Commented   Search   About

ProgIDFromCLSID

Retrieves the ProgID for a given CLSID.

HRESULT ProgIDFromCLSID(

REFCLSID clsid,
//The CLSID for which the ProgID is requested
LPOLESTR * lplpszProgID
//Receives a pointer to the requested ProgID on return
);

Parameters

clsid

Specifies the CLSID for which the ProgID is requested.

lplpszProgID

Receives a pointer to the requested ProgID on return.

Return Values

S_OK

Indicates the ProgID was returned successfully.

REGDB_E_CLASSNOTREG

Indicates class not registered in the registry.

REGDB_E_READREGDB

Indicates error reading registry.

Comments

Every OLE 2 object class listed in the Insert Object dialog box must have a programmatic identifier (ProgID), a string that uniquely identifies a given class. In addition to determining the eligibility for the Insert Object dialog box, the ProgID can be used as an identifier in a macro programming language to identify a class. Finally, the ProgID is also the class name used for an OLE 2 class when placed in an OLE 1 container.

The ProgIDFromCLSID function uses entries in the registry to do the conversion. OLE 2 application authors are responsible for correctly configuring the registry at application installation time.

The ProgID string must be different than the class name of any OLE 1 application, including the OLE 1 version of the same application, if there is one. In addition, a ProgID string must not contain more than 39 characters or start with a digit. Except for a single period, it cannot contain any punctuation (including underscores).

The ProgID must never be shown to the user in the user interface. If you need a short human-readable string for an object, call IOleObject::GetUserType.

The CLSIDFromProgID function can be called to create a CLSID from a given ProgID. CLSIDs can be freed with the task allocator (refer to the CoGetMalloc function).

See Also

CLSIDFromProgID

Related Links

Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET

More Online Helps

Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (sock2.hlp)
Unix Manual Pages

Free Tech Secrets ;) Copyright © 2008 Free Tect Secrets ;) greatis just4fun network just4fun