OleSetMenuDescriptor

Installs or removes OLE dispatching code from the container's frame window.

WINOLEAPI OleSetMenuDescriptor(
  HOLEMENU holemenu,      //Handle to the composite menu descriptor
  HWND hwndFrame,         //Handle to the container's frame window
  HWND hwndActiveObject,  //Handle to the object's in-place 
                          // activation window
  LPOLEINPLACEFRAME lpFrame,  //Pointer to the container's frame 
                              // window
  LPOLEINPLACEACTIVEOBJECT lpActiveObj
                          //Active in-place object
);
 

Parameters

holemenu
[in] Handle to the composite menu descriptor returned by the OleCreateMenuDescriptor function. If NULL, the dispatching code is unhooked.
hwndFrame
[in] Handle to the container's frame window where the in-place composite menu is to be installed.
hwndActiveObject
[in] Handle to the object's in-place activation window. OLE dispatches menu messages and commands to this window.
lpFrame
[in] Pointer to the IOleInPlaceFrame interface on the container's frame window.
lpActiveObj
[in] Pointer to the IOleInPlaceActiveObject interface on the active in-place object.

Return Values

This function supports the standard return values E_FAIL, E_INVALIDARG and E_UNEXPECTED, as well as the following:

S_OK
The menu was installed correctly.

Remarks

The container should call OleSetMenuDescriptor to install the dispatching code on hwndFrame when the object calls the IOleInPlaceFrame::SetMenu method, or to remove the dispatching code by passing NULL as the value for holemenu to OleSetMenuDescriptor.

If both the lpFrame and lpActiveObj parameters are non-NULL, OLE installs the context-sensitive help F1 message filter for the application. Otherwise, the application must supply its own message filter.

QuickInfo

  Windows NT: Use version 3.1 or later.
  Windows: Use Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in ole2.h.
  Import Library: Included as a resource in ole32.dll.

See Also

OleCreateMenuDescriptor, IOleInPlaceFrame::SetMenu, IOleInPlaceActiveObject