ocidl.h header

This header is used by multiple technologies. For more information, see:

ocidl.h contains the following programming interfaces:

Interfaces

 
IAdviseSinkEx

This interface is derived from IAdviseSink to provide extensions for notifying the sink of changes in an object's view status.
IClassFactory2

Enables a class factory object, in any sort of object server, to control object creation through licensing.
IConnectionPoint

Supports connection points for connectable objects. (IConnectionPoint)
IConnectionPointContainer

Supports connection points for connectable objects. (IConnectionPointContainer)
IEnumConnectionPoints

Enumerates connection points.
IEnumConnections

Enumerates the current connections for a connectable object.
IEnumOleUndoUnits

Enumerates the undo units on the undo or redo stack.
IFont

Provides a wrapper around a Windows font object.
IFontDisp

Exposes a font object's properties through Automation. It provides a subset of the IFont methods.
IObjectWithSite

Provides a simple way to support communication between an object and its site in the container.
IOleControl

Provides the features for supporting keyboard mnemonics, ambient properties, and events in control objects.
IOleControlSite

Provides the methods that enable a site object to manage each embedded control within a container.
IOleInPlaceObjectWindowless

Enables a windowless object to process window messages and participate in drag and drop operations. It is derived from and extends the IOleInPlaceObject interface.
IOleInPlaceSiteEx

Provides an additional set of activation and deactivation notification methods that enable an object to avoid unnecessary flashing on the screen when the object is activated and deactivated.
IOleInPlaceSiteWindowless

Extends the IOleInPlaceSiteEx interface.
IOleParentUndoUnit

Enables undo units to contain child undo units.
IOleUndoManager

The IOleUndoManager interface enables containers to implement multi-level undo and redo operations for actions that occur within contained controls.
IOleUndoUnit

Serves as the main interface on an undo unit. An undo unit encapsulates the information necessary to undo or redo a single action.
IPerPropertyBrowsing

Retrieves the information in the property pages offered by an object.
IPersistPropertyBag

Works with IPropertyBag and IErrorlog to define an individual property-based persistence mechanism.
IPersistStreamInit

A replacement for IPersistStream that adds an initialization method.
IPicture

Manages a picture object and its properties. Picture objects provide a language-neutral abstraction for bitmaps, icons, and metafiles.
IPictureDisp

Exposes the picture object's properties through Automation. It provides a subset of the functionality available through IPicture methods.
IPointerInactive

Enables an object to remain inactive most of the time, yet still participate in interaction with the mouse, including drag and drop.
IPropertyNotifySink

Implemented by a sink object to receive notifications about property changes from an object that supports IPropertyNotifySink as an outgoing interface.
IPropertyPage

Provides the main features of a property page object that manages a particular page within a property sheet.
IPropertyPage2

An extension to IPropertyPage to support initial selection of a property on a page.
IPropertyPageSite

Provides the main features for a property page site object.
IProvideClassInfo

Provides access to the type information for an object's coclass entry in its type library.
IProvideClassInfo2

An extension to IProvideClassInfo that makes is faster and easier to retrieve an object's outgoing interface IID for its default event set.
IProvideMultipleClassInfo

An extension to IProvideClassInfo2 that makes it faster and easier to retrieve type information from a component that may have multiple coclasses that determine its behavior.
IQuickActivate

Enables controls and containers to avoid performance bottlenecks on loading controls. It combines the load-time or initialization-time handshaking between the control and its container into a single call.
ISimpleFrameSite

Provides simple frame controls that act as simple containers for other nested controls.
ISpecifyPropertyPages

Indicates that an object supports property pages.
IViewObjectEx

An extension derived from IViewObject2 to provide support for Enhanced, flicker-free drawing for non-rectangular objects and transparent objects, hit testing for non-rectangular objects, and Control sizing

Functions

 
HPALETTE_UserFree

Frees resources on the server side when called by RPC stub files (HPALETTE_UserFree).
HPALETTE_UserFree64

Frees resources on the server side when called by RPC stub files. (HPALETTE_UserFree64)
HPALETTE_UserMarshal

Marshals an HPALETTE object into the RPC buffer. (HPALETTE_UserMarshal)
HPALETTE_UserMarshal64

Marshals an HPALETTE object into the RPC buffer. (HPALETTE_UserMarshal64)
HPALETTE_UserSize

Calculates the wire size of the HPALETTE object and gets its handle and data. (HPALETTE_UserSize)
HPALETTE_UserSize64

Calculates the wire size of the HPALETTE object and gets its handle and data. (HPALETTE_UserSize64)
HPALETTE_UserUnmarshal

Unmarshals an HPALETTE object from the RPC buffer. (HPALETTE_UserUnmarshal)
HPALETTE_UserUnmarshal64

Unmarshals an HPALETTE object from the RPC buffer. (HPALETTE_UserUnmarshal64)

Structures

 
CADWORD

Specifies a counted array of values that can be used to obtain the value corresponding to one of the predefined strings for a property.
CALPOLESTR

Specifies a counted array of strings used to specify the predefined strings that a property can accept.
CAUUID

Specifies a counted array of UUID or GUID types used to receive an array of CLSIDs for the property pages that the object wants to display.
CONNECTDATA

Describes a connection that exists to a given connection point.
CONTROLINFO

Contains parameters that describe a control's keyboard mnemonics and keyboard behavior. The structure is populated during the IOleControl::GetControlInfo method.
DVASPECTINFO

Contains information that is used by the IViewObject::Draw method to optimize rendering of an inactive object by making more efficient use of the GDI.
DVEXTENTINFO

Represents the sizing data used in IViewObjectEx::GetNaturalExtent.
LICINFO

Contains parameters that describe the licensing behavior of a class factory that supports licensing. The structure is filled by calling the IClassFactory2::GetLicInfo method.
POINTF

Contains information that is used to convert between container units, expressed in floating point, and control units, expressed in HIMETRIC.
PROPPAGEINFO

Contains parameters used to describe a property page to a property frame. A property page fills a caller-provided structure in the IPropertyPage::GetPageInfo method.
QACONTAINER

Specifies container information for IQuickActivate::QuickActivate.
QACONTROL

Specifies control information for IQuickActivate::QuickActivate.

Enumerations

 
ACTIVATEFLAGS

Indicates whether an object is activated as a windowless object. It is used in IOleInPlaceSiteEx::OnInPlaceActivateEx.
DVASPECT2

Specifies new drawing aspects used to optimize the drawing process.
DVASPECTINFOFLAG

Indicates whether an object can support optimized drawing of itself.
DVEXTENTMODE

Indicates whether the sizing mode is content or integral sizing.
GUIDKIND

Flags used to specify the kind of information requested from an object in the IProvideClassInfo2.
HITRESULT

Indicates whether a location is within the image of an object.
OLEDCFLAGS

Specifies additional information to the container about the device context that the object has requested.
PICTUREATTRIBUTES

Specifies attributes of a picture object as returned through the IPicture::get_Attributes method.
POINTERINACTIVE

Indicate the activation policy of the object and are used in the IPointerInactive::GetActivationPolicy method.
QACONTAINERFLAGS

Indicates ambient properties supplied by the container. It is used in the dwAmbientFlags member of the QACONTAINER structure.
READYSTATE

The ReadyState property retrieves the ReadyState of the MSWebDVD object.
UASFLAGS

Provides information about the parent undo unit.
VIEWSTATUS

Specifies the opacity of the object and the drawing aspects supported by the object.