IBuilderWizardManager::MapObjectToBuilderCLSID Method (Guid, UInt32, IntPtr, Guid)
Returns the CLSID of a builder for an OLE object given the object's CLSID.
Assembly: Microsoft.VisualStudio.Shell.Interop.8.0 (in Microsoft.VisualStudio.Shell.Interop.8.0.dll)
int MapObjectToBuilderCLSID( [InAttribute] Guid% rclsidObject, unsigned int dwPromptOpt, IntPtr hwndPromptOwner, [OutAttribute] Guid% pclsidBuilder )
Parameters
- rclsidObject
-
Type:
System::Guid
[in] CLSID of the object
- dwPromptOpt
-
Type:
System::UInt32
[in] Bit flags controlling whether there is a user prompt to choose the builder. Values are taken from the BLDPROMPTOPT enumeration.
- hwndPromptOwner
-
Type:
System::IntPtr
[in] Owner HWND for all dialogs and windows. May be NULL. If NULL, IBuilderWizardManager uses the HWND for the application frame window.
Note This method may bring up a modal dialog asking the user to choose the builder to use.
- pclsidBuilder
-
Type:
System::Guid
[out] The CLSID of a specific builder.
Return Value
Type: System::Int32S_OK if the CLSID maps to a builder.
S_FALSE if there is no builder for the CLSID.
The caller can control whether there is a user prompt to choose among multiple available builders for a particular CATID. If there is to be no prompt and there is more than one builder available, then IBuilderWizardManager picks a default builder.
A container calls this method when inserting a control to discover if there is a control builder to run. If so, the container calls GetBuilder to get the builder.
The builder manager’s implementation of MapObjectToBuilderCLSID may have private knowledge of how to do the mapping for special CLSIDs or it may use a general mechanism that looks in the registry.
This method always returns the CLSID of a particular builder.