IBindCtx::GetObjectParam

Retrieves the pointer associated with the specified key in the bind context's string-keyed table of pointers.

HRESULT GetObjectParam(

LPOLESTR pszKey,
//Points to the key to be used
IUnknown **ppunk
//Receives a pointer to the object associated with the key
);

Parameters

pszKey

[in] Points to a zero-terminated string containing the key to search for. For Win32 applications, the LPOLESTR type indicates a wide character string (two bytes per character); otherwise, the string has one byte per character. Key string comparison is case sensitive.

ppunk

[out] Receives a pointer to the object associated with pszKey. If an error occurs, *ppunk is set to NULL. If *ppunk is non-NULL, the implementation calls IUnknown::AddRef on the parameter; it is the caller's responsibility to call IUnknown::Release.

Return Values

S_OK

The pointer associated with the specified key was successfully returned.

E_FAIL

Indicates that no object has been registered with the specified key.

Comments

A bind context maintains a table of interface pointers, each associated with a string key. This enables communication between a moniker implementation and the caller that initiated the binding operation. One party can store an interface pointer under a string known to both parties so that the other party can later retrieve it from the bind context.

The pointer this method retrieves must have previously been inserted into the table using the IBindCtx::RegisterObjectParam method.

Notes to Callers

You can call IBindCtx::GetObjectParam if you are either a moniker implementor or a sophisticated moniker client.

If you are a moniker client, you can call this method if a binding operation failed to get specific information about the error that occurred. Depending on the error, you may be able to correct the situation and retry the binding operation. See IBindCtx::RegisterObjectParam for more information.

If you are a moniker implementor, you can call this method to retrieve information specified by the caller that initiated the binding operation. By convention, you should use key names that begin with the string form of the CLSID of your moniker class (see the StringFromCLSID API function).

See Also

IBindCtx::RegisterObjectParam, IBindCtx::EnumObjectParam

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database