# IOleDocument

The IOleDocument interface enables a document object to communicate to prospective containers its ability to create views of its data. This interface also enables a document object to enumerate its views and to provide containers with miscellaneous information about itself, such as whether it supports multiple views or complex rectangles.

##### When to Implement

An OLE document that is to be activated as a document object at the very least must implement this interface. If an application exposes more than one type of document object, each type must implement IOleDocument. A document’s view frame provider, which

##### When to Use

A container of document objects calls the methods of this interface to ask a document object to create views of itself, enumerate the views it supports, or provide miscellaneous information about its capabilities.

Methods in VTable Order

IUnknown Methods | Description
QueryInterface | Returns pointers to supported interfaces.
AddRef | Increments reference count.
Release | Decrements reference count.

IOleDocument Methods | Description
CreateView | Creates a new view object.
GetDocMiscStatus | Returns status bits about the document object.
EnumViews | Enumerates views supported by the document object.

See Also

IOleCommandTarget, IOleContinueCallback, IOleDocumentSite, IOleDocumentView, IPrint