Internet
Legal Information
Guide
Overview
Overview
Explaining the Component Object Model
OLE Information Management
Describing Compound Documents
Defining Automation
Where to Find Additional Information
The Component Object Model
The Component Object Model
COM Objects and Interfaces
COM Objects and Interfaces
Interfaces and Interface Implementations
Interface Pointers and Interfaces
IUnknown and Interface Definition Inheritance
Using and Implementing IUnknown
Using and Implementing IUnknown
QueryInterface: Navigating in an Object
Rules for Implementing QueryInterface
Managing Object Lifetimes through Reference Counting
Managing Object Lifetimes through Reference Counting
Implementing Reference Counting
Rules for Managing Reference Counts
Reusing Objects
Reusing Objects
Containment/Delegation
Aggregation
The COM Library
Managing Memory Allocation
Managing Memory Allocation
The OLE Memory Allocator
Memory Management Rules
Debugging Memory Allocations
Processes and Threads
Processes and Threads
Choosing the Threading Model
Single-threaded Apartments
Multi-threaded Apartments
Single-/Multi-threaded Communication
In-process server Threading Issues
COM Clients and Servers
COM Clients and Servers
Getting a Pointer to an Object
Creating an Object through a Class Object
Creating an Object through a Class Object
OLE Class Objects and CLSIDs
Locating a Remote Object
Instance Creation Helper Functions
COM Server Responsibilities
COM Server Responsibilities
Implementing IClassFactory
Licensing and IClassFactory2
Registering COM Servers
Registering COM Servers
Registering a Class at Installation
Registering a Running EXE Server
Registering Objects in the ROT
Self-Registration
Installing as a Win32 Service or User Account
Out-of-process Server Implementation Helpers
GUID Creation and Optimizations
Persistent Object State
Persistent Object State
Persistent Object Interfaces
Initializing Persistent Objects
Security in COM
Security in COM
Launch Security
Call Security
Providing Class Information
Inter-object Communication
Inter-object Communication
Marshaling Details
Proxy
Stub
Channel
Call Synchronization
Registering Object Applications
Error Handling
Error Handling
Structure of OLE Error Codes
Codes in FACILITY_ITF
Using Macros for Error Handling
Error Handling Strategies
Error Handling Strategies
HRESULTs
Handling Error Information
Monikers
Monikers
Moniker Clients
Moniker Providers
OLE Moniker Implementations
OLE Moniker Implementations
File Monikers
Composite Monikers
Item Monikers
Anti-monikers
Pointer Monikers
Class Monikers
Asynchronous Monikers
Asynchronous Monikers
Asynchronous Versus Synchronous Monikers
Asynchronous Versus Synchronous Binding
Asynchronous Versus Synchronous Storage
Data-Pull Model Versus Data-Push Model
URL Monikers
URL Monikers
Callback Synchronization
Media-Type Negotiation
URL Moniker API Functions
Connectable Objects
Connectable Objects
Architecture of Connectable Objects
Connectable Object Interfaces
Connectable Object Interfaces
Using IConnectionPointContainer
Using IConnectionPoint
Using IProvideClassInfo
Structured Storage
Structured Storage
The Evolution of File Systems
Storages and Streams
Compound Files
Structured Storage Elements
Structured Storage Elements
Interfaces
API Functions
Access Modes
Storage Object Naming Conventions
Persistent Property Sets
Persistent Property Sets
Managing Property Sets
Managing Properties
Using Property Sets
Using Property Sets
Storing Information with System Objects
Storing Information with System Objects
The Summary Information Property Set
Guidelines for Implementing the Document Summary Information Property Set
OLE Compound File Property Set Implementations
OLE Compound File Property Set Implementations
Performance Characteristics
Using OLE-Implemented Property Sets
IPropertySetStorage Implementation Considerations
IPropertySetStorage Implementation Considerations
Names in IStorage
Storage vs Stream for a Property Set
Setting the CLSID of the Property Set
Synchronization Points
Code pages: Unicode strings, Macintosh, etc.
Dictionary
Extensions
Asynchronous Storage
Asynchronous Storage
Storage Modes
Asynchronous Compound Files
How Asynchronous Binding and Storage Work
Compound File Optimization
Data Transfer
Data Transfer
Data Transfer Interfaces
Data Formats and Transfer Media
Data Formats and Transfer Media
The FORMATETC Structure
The STGMEDIUM Structure
Drag and Drop
Drag and Drop
Drag Source Responsibilities
Data Notification
Property Pages and Property Sheets
Property Pages and Property Sheets
Property Sheets and Property Pages
Data Binding through IPropertyNotifySink
Compound Documents
Compound Documents
Containers and Servers
Linking and Embedding
Linking and Embedding
Linked Objects
Embedded Objects
Object Handlers
Object Handlers
The Default Handler and Custom Handlers
In-Process Servers
In-Process Servers
Advantages
Disadvantages
Linked Objects
Notifications
Notifications
Types of Notifications
How Notifications Work
Compound Document Interfaces
Object States
Object States
Entering the Loaded State
Entering the Running State
Entering the Passive State
Implementing In-Place Activation
Creating Linked and Embedded Objects from Existing Data
View Caching
ActiveX Controls
ActiveX Controls
ActiveX Controls Architecture
ActiveX Controls Interfaces
Properties and Methods
Properties and Methods
Control Properties
Control Properties
Standard Properties
Standard Font Object
Standard Picture Object
Control Methods
Control Events
Visual Representation
Keyboard Handling for Controls
Persistence
Registration and Licensing
Registration and Licensing
ActiveX Controls Registry Information
Component Categories Manager Implementation
Component Categories Manager Implementation
Categorizing by Component Capabilities
Categorizing by Container Capabilities
The Component Categories Manager
Default Classes and Associations
Defining Component Categories
Associating Icons with a Category
Designing COM Interfaces
Designing COM Interfaces
Interface Design Rules
Writing a Custom Interface
Writing a Custom Interface
Designing Efficient Interfaces
Designing Efficient Interfaces
Creating a Custom Interface
Building a Proxy/Stub DLL
Registering a Proxy/Stub DLL
Using a Custom Interface
URL Open Stream Functions
Appendixes
Compatibility with OLE 1 and 16:32-Bit Interoperability
Compatibility with OLE 1 and 16:32-Bit Interoperability
Compatibility with OLE 1
Working with OLE 1 Clients
Working with OLE 1 Servers
OLE 1/Registry Compatibility Information
OLE 1/Registry Compatibility Information
OLE 1 Compatibility Subkeys
OLE 1 Compatibility Subkeys
Information for OLE 1 Applications Subkey Entries
OLE 1 Application Entries
ProgID and OLE 1 Compatibility
ProgID and OLE 1 Compatibility
Version-dependent Identifiers
Inserting an OLE 2 Object in an OLE 1 Application
Specifying Unregistered Verbs
Accommodating OLE 1 Versions of the Object Application
Accommodating OLE 1 Versions of the Object Application
When the OLE 1 Version Is Overwritten
When the OLE 1 Version Is Not Overwritten
Upgrading Applications
Functions to Support Compatibility
16:32 Bit Interoperability
16:32 Bit Interoperability
Thunk Layer Operation
Thunk Layer Operation
Interoperability Using Standard Interfaces (OLE 2 Defined)
Interoperability Using Custom Interfaces (either MIDL or Manually Written Marshalling)
OLE Serialized Property Set Format
OLE Serialized Property Set Format
Property Set Header
Property Set Header
Byte-Order Indicator
Format Version
Originating OS Version
CLSID
Reserved
Format Identifier/Offset Pair
Format Identifier/Offset Pair
Format Identifiers
Allocating Format Identifiers
Section
Section
Size of Section
Count of Properties
Property ID/Offset Pairs
Type Indicators
Reserved Property IDs
Reserved Property IDs
Property ID 0
Property ID 0
Example Dictionary
Property ID One
Property ID 0x80000000
Other Reserved Property IDs
Storing Property Sets
The DocumentSummaryInformation Property Set
C and C++ Design Considerations
C and C++ Design Considerations
Component Objects: C Nested Structures
Component Objects: C++ Nested Classes
Multiple Inheritance
Converting Mapping Modes
ActiveX Control and Control Container Guidelines
ActiveX Control and Control Container Guidelines
Overview of Control and Control Container Guidelines
Overview of Control and Control Container Guidelines
Why are the ActiveX Control and Control Container Guidelines Important?
What to do When an Interface You Need is Not Available
What's New in the Control and Control Container Guidelines?
Controls
Controls
Self Registration for Controls
What Support for an Interface Means
Persistence Interfaces
Optional Methods in Control Interfaces
Class Factory Options
Properties
Methods (via IDispatch and Other dispinterfaces)
Events in Controls
Property Pages
Ambient Properties for Controls
Using the Container's Functionality
Containers
Containers
Required Interfaces
Optional Methods
Miscellaneous Status Bits Support
Keyboard Handling in Controls
Storage Interfaces
Ambient Properties
Extended Properties, Events and Methods
Message Reflection
Automatic Clipping
Degrading Gracefully in the Absence of an Interface
Component Categories
Component Categories
What are Component Categories and how do they work?
Simple Frame Site Containment
Simple Data Binding
Advanced Data Binding
Visual Basic private interfaces
Internet-Aware Objects
Windowless Controls
General Guidelines
General Guidelines
Overloading IPropertyNotifySink
Container-Specific Private Interfaces
Multi-Threaded Issues
Event Freezing
Container Controls
WS_GROUP and WS_TABSTOP Flags in Controls
Multiple Controls in One DLL
The IOleContainer::EnumObjects Method
Enhanced Metafiles
Licensing
Dual Interfaces
IPropertyBag and IPersistPropertyBag
Event Coordinate Translation
Standard DISPIDS
Databinding
Reference
Interfaces
IAdviseSink
IAdviseSink
IAdviseSink::OnClose
IAdviseSink::OnDataChange
IAdviseSink::OnRename
IAdviseSink::OnSave
IAdviseSink::OnViewChange
IAdviseSink2
IAdviseSink2
IAdviseSink2::OnLinkSrcChange
IAdviseSinkEx
IAdviseSinkEx
IAdviseSinkEx::OnViewStatusChange
IAsyncMoniker
IAuthenticate
IAuthenticate
IAuthenticate::Authenticate
IBindCtx
IBindCtx
IBindCtx::EnumObjectParam
IBindCtx::GetBindOptions
IBindCtx::GetObjectParam
IBindCtx::GetRunningObjectTable
IBindCtx::RegisterObjectBound
IBindCtx::RegisterObjectParam
IBindCtx::ReleaseBoundObjects
IBindCtx::RevokeObjectBound
IBindCtx::RevokeObjectParam
IBindCtx::SetBindOptions
IBindHost
IBindHost
IBindHost::CreateMoniker
IBindHost::MonikerBindToObject
IBindHost::MonikerBindToStorage
IBinding
IBinding
IBinding::Abort
IBinding::GetBindResult
IBinding::GetPriority
IBinding::Resume
IBinding::SetPriority
IBinding::Suspend
IBindStatusCallback
IBindStatusCallback
IBindStatusCallback::GetBindInfo
IBindStatusCallback::GetPriority
IBindStatusCallback::OnDataAvailable
IBindStatusCallback::OnLowResource
IBindStatusCallback::OnObjectAvailable
IBindStatusCallback::OnProgress
IBindStatusCallback::OnStartBinding
IBindStatusCallback::OnStopBinding
IBindStatusCallback::QueryInterface
ICatInformation
ICatInformation
ICatInformation::EnumCategories
ICatInformation::EnumClassesOfCategories
ICatInformation::EnumImplCategoriesOfClass
ICatInformation::EnumReqCategoriesOfClass
ICatInformation::GetCategoryDesc
ICatInformation::IsClassOfCategories
ICatRegister
ICatRegister
ICatRegister::RegisterCategories
ICatRegister::RegisterClassImplCategories
ICatRegister::RegisterClassReqCategories
ICatRegister::UnRegisterCategories
ICatRegister::UnRegisterClassImplCategories
ICatRegister::UnRegisterClassReqCategories
IClassActivator
IClassActivator
IClassActivator::GetClassObject
IClassFactory
IClassFactory
IClassFactory::CreateInstance
IClassFactory::LockServer
IClassFactory2
IClassFactory2
IClassFactory2::CreateInstanceLic
IClassFactory2::GetLicInfo
IClassFactory2::RequestLicKey
IClientSecurity
IClientSecurity
IClientSecurity::CopyProxy
IClientSecurity::QueryBlanket
IClientSecurity::SetBlanket
ICodeInstall
ICodeInstall
ICodeInstall::GetWindow
ICodeInstall::OnCodeInstallProblem
IConnectionPoint
IConnectionPoint
IConnectionPoint::Advise
IConnectionPoint::EnumConnections
IConnectionPoint::GetConnectionInterface
IConnectionPoint::GetConnectionPointContainer
IConnectionPoint::Unadvise
IConnectionPointContainer
IConnectionPointContainer
IConnectionPointContainer::EnumConnectionPoints
IConnectionPointContainer::FindConnectionPoint
IContinueCallback
IContinueCallback
IContinueCallback::FContinue
IContinueCallback::FContinuePrinting
IDataAdviseHolder
IDataAdviseHolder
IDataAdviseHolder::Advise
IDataAdviseHolder::EnumAdvise
IDataAdviseHolder::SendOnDataChange
IDataAdviseHolder::Unadvise
IDataObject
IDataObject
IDataObject::DAdvise
IDataObject::DUnadvise
IDataObject::EnumDAdvise
IDataObject::EnumFormatEtc
IDataObject::GetCanonicalFormatEtc
IDataObject::GetData
IDataObject::GetDataHere
IDataObject::QueryGetData
IDataObject::SetData
IDropSource
IDropSource
IDropSource::GiveFeedback
IDropSource::QueryContinueDrag
IDropTarget
IDropTarget
IDropTarget::DragEnter
IDropTarget::DragLeave
IDropTarget::DragOver
IDropTarget::Drop
IEnumXXXX
IEnumXXXX
IEnumXXXX::Clone
IEnumXXXX::Next
IEnumXXXX::Reset
IEnumXXXX::Skip
IEnumConnectionPoints
IEnumConnections
IEnumFORMATETC
IEnumHLITEM
IEnumMoniker
IEnumOleDocumentViews
IEnumOleUndoUnits
IEnumOLEVERB
IEnumSTATDATA
IEnumSTATPROPSETSTG
IEnumSTATPROPSETSTG-Compound File Implementation
IEnumSTATPROPSTG
IEnumSTATPROPSTG-Compound File Implementation
IEnumSTATSTG
IEnumString
IEnumUnknown
IErrorLog
IErrorLog
IErrorLog::AddError
IExternalConnection
IExternalConnection
IExternalConnection::AddConnection
IExternalConnection::ReleaseConnection
IFillLockBytes
IFillLockBytes
IFillLockBytes::FillAppend
IFillLockBytes::FillAt
IFillLockBytes::SetFillSize
IFillLockBytes::Terminate
IFillLockBytes - Implementation
IFont
IFont
IFont::AddRefHfont
IFont::Clone
IFont::get_Bold
IFont::get_Charset
IFont::get_hFont
IFont::get_Italic
IFont::get_Name
IFont::get_Size
IFont::get_Strikethrough
IFont::get_Underline
IFont::get_Weight
IFont::IsEqual
IFont::put_Bold
IFont::put_Charset
IFont::put_Italic
IFont::put_Name
IFont::put_Size
IFont::put_Strikethrough
IFont::put_Underline
IFont::put_Weight
IFont::QueryTextMetrics
IFont::ReleaseHfont
IFont::SetHdc
IFont::SetRatio
IFont - Ole Implementation
IFontDisp
IFontDisp - Ole Implementation
IHlink
IHlink
IHlink::GetAdditionalParams
IHlink::GetFriendlyName
IHlink::GetHlinkSite
IHlink::GetMiscStatus
IHlink::GetMonikerReference
IHlink::GetStringReference
IHlink::GetTargetFrameName
IHlink::Navigate
IHlink::SetAdditionalParams
IHlink::SetFriendlyName
IHlink::SetHlinkSite
IHlink::SetMonikerReference
IHlink::SetStringReference
IHlink::SetTargetFrameName
IHlinkBrowseContext
IHlinkBrowseContext
IHlinkBrowseContext::Clone
IHlinkBrowseContext::Close
IHlinkBrowseContext::EnumNavigationStack
IHlinkBrowseContext::GetBrowseWindowInfo
IHlinkBrowseContext::GetHlink
IHlinkBrowseContext::GetObject
IHlinkBrowseContext::OnNavigateHlink
IHlinkBrowseContext::QueryHlink
IHlinkBrowseContext::Register
IHlinkBrowseContext::Revoke
IHlinkBrowseContext::SetBrowseWindowInfo
IHlinkBrowseContext::SetCurrentHlink
IHlinkFrame
IHlinkFrame
IHlinkFrame::GetBrowseContext
IHlinkFrame::Navigate
IHlinkFrame::OnNavigate
IHlinkFrame::SetBrowseContext
IHlinkFrame::UpdateHlink
IHlinkSite
IHlinkSite
IHlinkSite::GetMoniker
IHlinkSite::OnNavigationComplete
IHlinkSite::QueryService
IHlinkSite::ReadyToNavigate
IHlinkTarget
IHlinkTarget
IHlinkTarget::GetBrowseContext
IHlinkTarget::GetFriendlyName
IHlinkTarget::GetMoniker
IHlinkTarget::Navigate
IHlinkTarget::SetBrowseContext
IHttpNegotiate
IHttpNegotiate
IHttpNegotiate::BeginningTransaction
IHttpNegotiate::OnResponse
ILayoutStorage
ILayoutStorage
ILayoutStorage::LayoutScript
ILayoutStorage::BeginMonitor
ILayoutStorage::EndMonitor
ILayoutStorage::ReLayoutDocfile
ILockBytes
ILockBytes
ILockBytes::Flush
ILockBytes::LockRegion
ILockBytes::ReadAt
ILockBytes::SetSize
ILockBytes::Stat
ILockBytes::UnlockRegion
ILockBytes::WriteAt
ILockBytes - File-Based Implementation
ILockBytes - Global Memory Implementation
IMalloc
IMalloc
IMalloc::Alloc
IMalloc::DidAlloc
IMalloc::Free
IMalloc::GetSize
IMalloc::HeapMinimize
IMalloc::Realloc
IMallocSpy
IMallocSpy
IMallocSpy::PreAlloc
IMallocSpy::PostAlloc
IMallocSpy::PreDidAlloc
IMallocSpy::PostDidAlloc
IMallocSpy::PreFree
IMallocSpy::PostFree
IMallocSpy::PreGetSize
IMallocSpy::PostGetSize
IMallocSpy::PreHeapMinimize
IMallocSpy::PostHeapMinimize
IMallocSpy::PreRealloc
IMallocSpy::PostRealloc
IMarshal
IMarshal
IMarshal::DisconnectObject
IMarshal::GetMarshalSizeMax
IMarshal::GetUnmarshalClass
IMarshal::MarshalInterface
IMarshal::ReleaseMarshalData
IMarshal::UnmarshalInterface
IMarshal - Default Implementation
IMessageFilter
IMessageFilter
IMessageFilter::HandleInComingCall
IMessageFilter::MessagePending
IMessageFilter::RetryRejectedCall
IMoniker
IMoniker
IMoniker::BindToObject
IMoniker::BindToStorage
IMoniker::CommonPrefixWith
IMoniker::ComposeWith
IMoniker::Enum
IMoniker::GetDisplayName
IMoniker::GetTimeOfLastChange
IMoniker::Hash
IMoniker::Inverse
IMoniker::IsEqual
IMoniker::IsRunning
IMoniker::IsSystemMoniker
IMoniker::ParseDisplayName
IMoniker::Reduce
IMoniker::RelativePathTo
IMoniker - Anti-Moniker Implementation
IMoniker - Class Moniker Implementation
IMoniker - File Moniker Implementation
IMoniker - Generic Composite Moniker Implementation
IMoniker - Item Moniker Implementation
IMoniker - Pointer Moniker Implementation
IMoniker - URL Moniker Implementation
IMultiQI
IMultiQI
IMultiQI::QueryMultipleInterfaces
IObjectWithSite
IObjectWithSite
IObjectWithSite::GetSite
IObjectWithSite::SetSite
IOleAdviseHolder
IOleAdviseHolder
IOleAdviseHolder::Advise
IOleAdviseHolder::EnumAdvise
IOleAdviseHolder::SendOnClose
IOleAdviseHolder::SendOnRename
IOleAdviseHolder::SendOnSave
IOleAdviseHolder::Unadvise
IOleCache
IOleCache
IOleCache::Cache
IOleCache::EnumCache
IOleCache::InitCache
IOleCache::SetData
IOleCache::Uncache
IOleCache2
IOleCache2
IOleCache2::DiscardCache
IOleCache2::UpdateCache
IOleCacheControl
IOleCacheControl
IOleCacheControl::OnRun
IOleCacheControl::OnStop
IOleClientSite
IOleClientSite
IOleClientSite::GetContainer
IOleClientSite::GetMoniker
IOleClientSite::OnShowWindow
IOleClientSite::RequestNewObjectLayout
IOleClientSite::SaveObject
IOleClientSite::ShowObject
IOleCommandTarget
IOleCommandTarget
IOleCommandTarget::Exec
IOleCommandTarget::QueryStatus
IOleContainer
IOleContainer
IOleContainer::EnumObjects
IOleContainer::LockContainer
IOleControl
IOleControl
IOleControl::FreezeEvents
IOleControl::GetControlINfo
IOleControl::OnAmbientPropertyChange
IOleControl::OnMnemonic
IOleControlSite
IOleControlSite
IOleControlSite::GetExtendedControl
IOleControlSite::LockInPlaceActive
IOleControlSite::OnControlInfoChanged
IOleControlSite::OnFocus
IOleControlSite::ShowPropertyFrame
IOleControlSite::TransformCoords
IOleControlSite::TranslateAccelerator
IOleDocument
IOleDocument
IOleDocument::CreateView
IOleDocument::EnumViews
IOleDocument::GetDocMiscStatus
IOleDocumentSite
IOleDocumentSite
IOleDocumentSite::ActivateMe
IOleDocumentView
IOleDocumentView
IOleDocumentView::ApplyViewState
IOleDocumentView::Clone
IOleDocumentView::Close
IOleDocumentView::GetDocument
IOleDocumentView::GetInPlaceSite
IOleDocumentView::GetRect
IOleDocumentView::Open
IOleDocumentView::SaveViewState
IOleDocumentView::SetInPlaceSite
IOleDocumentView::SetRect
IOleDocumentView::SetRectComplex
IOleDocumentView::Show
IOleDocumentView::UIActivate
IOleInPlaceActiveObject
IOleInPlaceActiveObject
IOleInPlaceActiveObject::EnableModeless
IOleInPlaceActiveObject::OnDocWindowActivate
IOleInPlaceActiveObject::OnFrameWindowActivate
IOleInPlaceActiveObject::ResizeBorder
IOleInPlaceActiveObject::TranslateAccelerator
IOleInPlaceFrame
IOleInPlaceFrame
IOleInPlaceFrame::EnableModeless
IOleInPlaceFrame::InsertMenus
IOleInPlaceFrame::RemoveMenus
IOleInPlaceFrame::SetMenu
IOleInPlaceFrame::SetStatusText
IOleInPlaceFrame::TranslateAccelerator
IOleInPlaceObject
IOleInPlaceObject
IOleInPlaceObject::InPlaceDeactivate
IOleInPlaceObject::ReactivateAndUndo
IOleInPlaceObject::SetObjectRects
IOleInPlaceObject::UIDeactivate
IOleInPlaceObjectWindowless
IOleInPlaceObjectWindowless
IOleInPlaceObjectWindowless::GetDropTarget
IOleInPlaceObjectWindowless::OnWindowMessage
IOleInPlaceSite
IOleInPlaceSite
IOleInPlaceSite::CanInPlaceActivate
IOleInPlaceSite::DeactivateAndUndo
IOleInPlaceSite::DiscardUndoState
IOleInPlaceSite::GetWindowContext
IOleInPlaceSite::OnInPlaceActivate
IOleInPlaceSite::OnInPlaceDeactivate
IOleInPlaceSite::OnPosRectChange
IOleInPlaceSite::OnUIActivate
IOleInPlaceSite::OnUIDeactivate
IOleInPlaceSite::Scroll
IOleInPlaceSiteEx
IOleInPlaceSiteEx
IOleInPlaceSiteEx::OnInPlaceActivateEx
IOleInPlaceSiteEx::OnInPlaceDeactivateEx
IOleInPlaceSiteEx::RequestUIActivate
IOleInPlaceSiteWindowless
IOleInPlaceSiteWindowless
IOleInPlaceSiteWindowless::AdjustRect
IOleInPlaceSiteWindowless::CanWindowlessActivate
IOleInPlaceSiteWindowless::GetCapture
IOleInPlaceSiteWindowless::GetDC
IOleInPlaceSiteWindowless::GetFocus
IOleInPlaceSiteWindowless::InvalidateRect
IOleInPlaceSiteWindowless::InvalidateRgn
IOleInPlaceSiteWindowless::OnDefWindowMessage
IOleInPlaceSiteWindowless::ReleaseDC
IOleInPlaceSiteWindowless::ScrollRect
IOleInPlaceSiteWindowless::SetCapture
IOleInPlaceSiteWindowless::SetFocus
IOleInPlaceUIWindow
IOleInPlaceUIWindow
IOleInPlaceUIWindow::GetBorder
IOleInPlaceUIWindow::RequestBorderSpace
IOleInPlaceUIWindow::SetActiveObject
IOleInPlaceUIWindow::SetBorderSpace
IOleItemContainer
IOleItemContainer
IOleItemContainer::GetObject
IOleItemContainer::GetObjectStorage
IOleItemContainer::IsRunning
IOleLink
IOleLink
IOleLink::BindIfRunning
IOleLink::BindToSource
IOleLink::GetBoundSource
IOleLink::GetSourceDisplayName
IOleLink::GetSourceMoniker
IOleLink::GetUpdateOptions
IOleLink::SetSourceDisplayName
IOleLink::SetSourceMoniker
IOleLink::SetUpdateOptions
IOleLink::UnbindSource
IOleLink::Update
IOleObject
IOleObject
IOleObject::Advise
IOleObject::Close
IOleObject::DoVerb
IOleObject::EnumAdvise
IOleObject::EnumVerbs
IOleObject::GetClientSite
IOleObject::GetClipboardData
IOleObject::GetExtent
IOleObject::GetMiscStatus
IOleObject::GetMoniker
IOleObject::GetUserClassID
IOleObject::GetUserType
IOleObject::InitFromData
IOleObject::IsUpToDate
IOleObject::SetClientSite
IOleObject::SetColorScheme
IOleObject::SetExtent
IOleObject::SetHostNames
IOleObject::SetMoniker
IOleObject::Unadvise
IOleObject::Update
IOleParentUndoUnit
IOleParentUndoUnit
IOleParentUndoUnit::Add
IOleParentUndoUnit::Close
IOleParentUndoUnit::FindUnit
IOleParentUndoUnit::GetParentState
IOleParentUndoUnit::Open
IOleUILinkContainer
IOleUILinkContainer
IOleUILinkContainer::CancelLink
IOleUILinkContainer::GetLinkSource
IOleUILinkContainer::GetLinkUpdateOptions
IOleUILinkContainer::GetNextLink
IOleUILinkContainer::OpenLinkSource
IOleUILinkContainer::SetLinkSource
IOleUILinkContainer::SetLinkUpdateOptions
IOleUILinkContainer::UpdateLink
IOleUILinkInfo
IOleUILinkInfo
IOleUILinkInfo::GetLastUpdate
IOleUIObjInfo
IOleUIObjInfo
IOleUIObjInfo::ConvertObject
IOleUIObjInfo::GetConvertInfo
IOleUIObjInfo::GetObjectInfo
IOleUIObjInfo::GetViewInfo
IOleUIObjInfo::SetViewInfo
IOleUndoManager
IOleUndoManager
IOleUndoManager::Add
IOleUndoManager::Close
IOleUndoManager::DiscardFrom
IOleUndoManager::Enable
IOleUndoManager::EnumRedoable
IOleUndoManager::EnumUndoable
IOleUndoManager::GetLastRedoDescription
IOleUndoManager::GetLastUndoDescription
IOleUndoManager::GetOpenParentState
IOleUndoManager::Open
IOleUndoManager::RedoTo
IOleUndoManager::UndoTo
IOleUndoUnit
IOleUndoUnit
IOleUndoUnit::Do
IOleUndoUnit::GetDescription
IOleUndoUnit::GetUnitType
IOleUndoUnit::OnNextAdd
IOleWindow
IOleWindow
IOleWindow::ContextSensitiveHelp
IOleWindow::GetWindow
IParseDisplayName
IParseDisplayName
IParseDisplayName::ParseDisplayName
IPerPropertyBrowsing
IPerPropertyBrowsing
IPerPropertyBrowsing::GetDisplayString
IPerPropertyBrowsing::GetPredefinedStrings
IPerPropertyBrowsing::GetPredefinedValue
IPerPropertyBrowsing::MapPropertyToPage
IPersist
IPersist
IPersist::GetClassID
IPersistFile
IPersistFile
IPersistFile::GetCurFile
IPersistFile::IsDirty
IPersistFile::Load
IPersistFile::Save
IPersistFile::SaveCompleted
IPersistMemory
IPersistMemory
IPersistMemory::GetSizeMax
IPersistMemory::InitNew
IPersistMemory::IsDirty
IPersistMemory::Load
IPersistMemory::Save
IPersistMoniker
IPersistMoniker
IPersistMoniker::GetCurMoniker
IPersistMoniker::IsDirty
IPersistMoniker::Load
IPersistMoniker::Save
IPersistMoniker::SaveCompleted
IPersistPropertyBag
IPersistPropertyBag
IPersistPropertyBag::InitNew
IPersistPropertyBag::Load
IPersistPropertyBag::Save
IPersistStorage
IPersistStorage
IPersistStorage::HandsOffStorage
IPersistStorage::InitNew
IPersistStorage::IsDirty
IPersistStorage::Load
IPersistStorage::Save
IPersistStorage::SaveCompleted
IPersistStream
IPersistStream
IPersistStream::GetSizeMax
IPersistStream::IsDirty
IPersistStream::Load
IPersistStream::Save
IPersistStream - URL Moniker Implementation
IPersistStreamInit
IPersistStreamInit
IPersistStreamInit::GetSizeMax
IPersistStreamInit::InitNew
IPersistStreamInit::IsDirty
IPersistStreamInit::Load
IPersistStreamInit::Save
IPicture
IPicture
IPicture::get_Attributes
IPicture::get_CurDC
IPicture::get_Handle
IPicture::get_Height
IPicture::get_hPal
IPicture::get_KeepOriginalFormat
IPicture::get_Type
IPicture::get_Width
IPicture::PictureChanged
IPicture::put_KeepOriginalFormat
IPicture::Render
IPicture::SaveAsFile
IPicture::SelectPicture
IPicture::set_hPal
IPicture - Ole Implementation
IPictureDisp
IPictureDisp - Ole Implementation
IPointerInactive
IPointerInactive
IPointerInactive::GetActivationPolicy
IPointerInactive::OnInactiveMouseMove
IPointerInactive::OnInactiveSetCursor
IPrint
IPrint
IPrint::GetPageInfo
IPrint::Print
IPrint::SetInitialPageNum
IProgressNotify
IProgressNotify
IProgressNotify::OnProgress
IPropertyBag
IPropertyBag
IPropertyBag::Read
IPropertyBag::Write
IPropertyNotifySink
IPropertyNotifySink
IPropertyNotifySink::OnChanged
IPropertyNotifySink::OnRequestEdit
IPropertyPage
IPropertyPage
IPropertyPage::Activate
IPropertyPage::Apply
IPropertyPage::Deactivate
IPropertyPage::GetPageInfo
IPropertyPage::Help
IPropertyPage::IsPageDirty
IPropertyPage::Move
IPropertyPage::SetObjects
IPropertyPage::SetPageSite
IPropertyPage::Show
IPropertyPage::TranslateAccelerator
IPropertyPage2
IPropertyPage2
IPropertyPage2::EditProperty
IPropertyPageSite
IPropertyPageSite
IPropertyPageSite::GetLocaleID
IPropertyPageSite::GetPageContainer
IPropertyPageSite::OnStatusChange
IPropertyPageSite::TranslateAccelerator
IPropertyPageSite - Ole Implementation
IPropertySetStorage
IPropertySetStorage
IPropertySetStorage::Create
IPropertySetStorage::Delete
IPropertySetStorage::Enum
IPropertySetStorage::Open
IPropertySetStorage-Compound File Implementation
IPropertyStorage
IPropertyStorage
IPropertyStorage::Commit
IPropertyStorage::DeleteMultiple
IPropertyStorage::DeletePropertyNames
IPropertyStorage::Enum
IPropertyStorage::ReadMultiple
IPropertyStorage::ReadPropertyNames
IPropertyStorage::Revert
IPropertyStorage::Stat
IPropertyStorage::SetClass
IPropertyStorage::SetTimes
IPropertyStorage::WriteMultiple
IPropertyStorage::WritePropertyNames
IPropertyStorage-Compound File Implementation
IProvideClassInfo
IProvideClassInfo
IProvideClassInfo::GetClassInfo
IProvideClassInfo2
IProvideClassInfo2
IProvideClassInfo2::GetGUID
IQuickActivate
IQuickActivate
IQuickActivate::GetContentExtent
IQuickActivate::QuickActivate
IQuickActivate::SetContentExtent
IRootStorage
IRootStorage
IRootStorage::SwitchToFile
IRootStorage - Compound File Implementation
IROTData
IROTData
IROTData::GetComparisonData
IRunnableObject
IRunnableObject
IRunnableObject::GetRunningClass
IRunnableObject::IsRunning
IRunnableObject::LockRunning
IRunnableObject::Run
IRunnableObject::SetContainedObject
IRunningObjectTable
IRunningObjectTable
IRunningObjectTable::EnumRunning
IRunningObjectTable::GetObject
IRunningObjectTable::GetTimeOfLastChange
IRunningObjectTable::IsRunning
IRunningObjectTable::NoteChangeTime
IRunningObjectTable::Register
IRunningObjectTable::Revoke
IServerSecurity
IServerSecurity
IServerSecurity::ImpersonateClient
IServerSecurity::IsImpersonating
IServerSecurity::QueryBlanket
IServerSecurity::RevertToSelf
IServiceProvider [New - Windows NT]
IServiceProvider [New - Windows NT]
IServiceProvider::QueryService
ISimpleFrameSite
ISimpleFrameSite
ISimpleFrameSite::PostMessageFilter
ISimpleFrameSite::PreMessageFilter
ISpecifyPropertyPages
ISpecifyPropertyPages
ISpecifyPropertyPages::GetPages
IStdMarshalInfo
IStdMarshalInfo
IStdMarshalInfo::GetClassForHandler
IStorage
IStorage
IStorage::Commit
IStorage::CopyTo
IStorage::CreateStorage
IStorage::CreateStream
IStorage::DestroyElement
IStorage::EnumElements
IStorage::MoveElementTo
IStorage::OpenStorage
IStorage::OpenStream
IStorage::RenameElement
IStorage::Revert
IStorage::SetClass
IStorage::SetElementTimes
IStorage::SetStateBits
IStorage::Stat
IStorage - Compound File Implementation
IStream
IStream
IStream::Clone
IStream::Commit
IStream::CopyTo
IStream::LockRegion
IStream::Read
IStream::Revert
IStream::Seek
IStream::SetSize
IStream::Stat
IStream::UnlockRegion
IStream::Write
IStream - Compound File Implementation
IUnknown
IUnknown
IUnknown::AddRef
IUnknown::QueryInterface
IUnknown::Release
IViewObject
IViewObject
IViewObject::Draw
IViewObject::Freeze
IViewObject::GetAdvise
IViewObject::GetColorSet
IViewObject::SetAdvise
IViewObject::Unfreeze
IViewObject2
IViewObject2
IViewObject2::GetExtent
IViewObjectEx
IViewObjectEx
IViewObjectEx::GetNaturalExtent
IViewObjectEx::GetRect
IViewObjectEx::GetViewStatus
IViewObjectEx::QueryHitPoint
IViewObjectEx::QueryHitRect
IWindowForBindingUI
IWindowForBindingUI
IWindowForBindingUI::GetWindow
IWinInetHttpInfo
IWinInetHttpInfo
IWinInetHttpInfo::QueryInfo
IWinInetInfo
IWinInetInfo
IWinInetInfo::QueryOption
Functions
BindMoniker
CLSIDFromProgID
CLSIDFromString
CoAddRefServerProcess
CoBuildVersion
CoCopyProxy
CoCreateFreeThreadedMarshaler
CoCreateGuid
CoCreateInstance
CoCreateInstanceEx
CoCreateStandardMalloc
CoDisconnectObject
CoDosDateTimeToFileTime
CoFileTimeNow
CoFileTimeToDosDateTime
CoFreeAllLibraries
CoFreeLibrary
CoFreeUnusedLibraries
CoGetCallContext
CoGetClassObject
CoGetClassObjectFromURL
CoGetCurrentProcess
CoGetInstanceFromFile
CoGetInstanceFromIStorage
CoGetInterfaceAndReleaseStream
CoGetMalloc
CoGetMarshalSizeMax
CoGetPSClsid
CoGetStandardMarshal
CoGetTreatAsClass
CoImpersonateClient
CoInitialize
CoInitializeEx
CoInitializeSecurity
CoIsHandlerConnected
CoIsOle1Class
CoLoadLibrary
CoLockObjectExternal
CoMarshalHresult
CoMarshalInterface
CoMarshalInterThreadInterfaceInStream
CoQueryAuthenticationServices
CoQueryClientBlanket
CoQueryProxyBlanket
CoRegisterClassObject
CoRegisterMallocSpy
CoRegisterMessageFilter
CoRegisterPSClsid
CoReleaseMarshalData
CoReleaseServerProcess
CoResumeClassObjects
CoRevertToSelf
CoRevokeClassObject
CoRevokeMallocSpy
CoSetProxyBlanket
CoSuspendClassObjects
CoTaskMemAlloc
CoTaskMemFree
CoTaskMemRealloc
CoTreatAsClass
CoUninitialize
CoUnmarshalHresult
CoUnmarshalInterface
CreateAntiMoniker
CreateAsyncBindCtx
CreateBindCtx
CreateClassMoniker
CreateDataAdviseHolder
CreateDataCache
CreateFileMoniker
CreateFormatEnumerator
CreateGenericComposite
CreateILockBytesOnHGlobal
CreateItemMoniker
CreateOleAdviseHolder
CreatePointerMoniker
CreateStreamOnHGlobal
CreateURLMoniker
DllCanUnloadNow
DllGetClassObject
DllRegisterServer
DllUnregisterServer
DoDragDrop
FACILITY_NT_BIT
FAILED
FindMediaTypeClass
FreePropVariantArray
GetClassFile
GetConvertStg
GetHGlobalFromILockBytes
GetHGlobalFromStream
GetRunningObjectTable
GetScode
HlinkCreateBrowseContext
HlinkCreateFromData
HlinkCreateFromMoniker
HlinkCreateFromString
HlinkGetSpecialReference
HlinkGoBack
HlinkGoForward
HlinkNavigate
HlinkNavigateMoniker
HlinkNavigateString
HlinkNavigateToStringReference
HlinkOnNavigate
HlinkQueryCreateFromData
HlinkSetSpecialReference
HlinkSimpleNavigateToMoniker
HlinkSimpleNavigateToString
HRESULT_CODE
HRESULT_FACILITY
HRESULT_FROM_NT
HRESULT_FROM_WIN32
HRESULT_SEVERITY
IIDFromString
IsAccelerator
IsAsyncMoniker
IS_ERROR
IsEqualGUID
IsEqualCLSID
IsEqualIID
IsValidIid
IsValidInterface
IsValidPtrIn
IsValidPtrOut
IsValidURL
MAKE_HRESULT
MAKE_SCODE
MkParseDisplayName
MkParseDisplayNameEx
MonikerCommonPrefixWith
MonikerRelativePathTo
OleBuildVersion
OleConvertIStorageToOLESTREAM
OleConvertIStorageToOLESTREAMEx
OleConvertOLESTREAMToIStorage
OleConvertOLESTREAMToIStorageEx
OleCreate
OleCreateDefaultHandler
OleCreateEmbeddingHelper
OleCreateEx
OleCreateFontIndirect
OleCreateFromData
OleCreateFromDataEx
OleCreateFromFile
OleCreateFromFileEx
OleCreateLink
OleCreateLinkEx
OleCreateLinkFromData
OleCreateLinkFromDataEx
OleCreateLinkToFile
OleCreateLinkToFileEX
OleCreateMenuDescriptor
OleCreatePictureIndirect
OleCreatePropertyFrame
OleCreatePropertyFrameIndirect
OleCreateStaticFromData
OleDestroyMenuDescriptor
OleDoAutoConvert
OleDraw
OleDuplicateData
OleFlushClipboard
OleGetAutoConvert
OleGetClipboard
OleGetIconOfClass
OleGetIconOfFile
OleIconToCursor
OleInitialize
OleIsCurrentClipboard
OleIsRunning
OleLoad
OleLoadFromStream
OleLoadPicture
OleLockRunning
OleMetafilePictFromIconAndLabel
OleNoteObjectVisible
OleQueryCreateFromData
OleQueryLinkFromData
OleRegGetUserType
OleRegGetMiscStatus
OleRegEnumFormatEtc
OleRegEnumVerbs
OleRun
OleSave
OleSaveToStream
OleSetAutoConvert
OleSetClipboard
OleSetContainedObject
OleSetMenuDescriptor
OleTranslateAccelerator
OleTranslateColor
OleUIAddVerbMenu
OleUIBusy
OleUICanConvertOrActivateAs
OleUIChangeIcon
OleUIChangeSource
OleUIConvert
OleUIEditLinks
OleUIInsertObject
OleUIObjectProperties
OleUIPasteSpecial
OleUIPromptUser
OleUIUpdateLinks
OleUninitialize
ProgIDFromCLSID
PropagateResult
PropVariantClear
PropVariantCopy
ReadClassStg
ReadClassStm
ReadFmtUserTypeStg
RegisterBindStatusCallback
RegisterDragDrop
RegisterFormatEnumerator
RegisterMediaTypeClass
RegisterMediaTypes
ReleaseStgMedium
ResultFromScode
RevokeBindStatusCallback
RevokeDragDrop
RevokeFormatEnumerator
SCODE_CODE
SCODE_FACILITY
SCODE_SEVERITY
SetConvertStg
StgCreateDocfile
StgCreateDocfileOnILockBytes
StgGetIFillLockBytesOnFile
StgGetIFillLockBytesOnILockBytes
StgIsStorageFile
StgIsStorageILockBytes
StgOpenAsyncDocfileOnIFillLockBytes
StgOpenLayoutDocfile
StgOpenStorage
StgOpenStorageOnILockBytes
StgSetTimes
StringFromCLSID
StringFromGUID2
StringFromIID
SUCCEEDED
URLDownloadToCacheFile
URLDownLoadToFile
URLMkSetSessionOption
URLOpenStream
URLOpenBlockingStream
URLOpenPullStream
WriteClassStg
WriteClassStm
WriteFmtUserTypeStg
Structures
BINDINFO
BIND_OPTS
BIND_OPTS2
CADWORD
CALPOLESTR
CAUUID
COAUTHINFO
CONNECTDATA
CONTROLINFO
COSERVERINFO
DVASPECTINFO
DVEXTENTINFO
DVTARGETDEVICE
FILETIME
FONTDESC
FORMATETC
HLBWINFO
HLITEM
INTERFACEINFO
LICINFO
MULTI_QI
OBJECTDESCRIPTOR
OCPFIPARAMS
OLECMD
OLECMDTEXT
OLEINPLACEFRAMEINFO
OLEMENUGROUPWIDTHS
OLEUIBUSY
OLEUICHANGEICON
OLEUICHANGESOURCE
OLEUICONVERT
OLEUIEDITLINKS
OLEUIGNRLPROPS
OLEUIINSERTOBJECT
OLEUILINKPROPS
OLEUIOBJECTPROPS
OLEUIPASTEENTRY
OLEUIPASTESPECIAL
OLEUIVIEWPROPS
OLEVERB
PAGERANGE
PAGESET
PICTDESC
POINTF
PROPPAGEINFO
PROPSPEC
PROPVARIANT
QACONTAINER
QACONTROL
RemSNB
SNB
SOLE_AUTHENTICATION_SERVICE
STATDATA
STATPROPSETSTG
STATPROPSTG
STATSTG
STORAGELAYOUT
STGMEDIUM
Enumerations
ACTIVATEFLAGS
ADVF
BINDF
BIND_FLAGS
BINDINFOF
BINDSPEED
BINDSTATUS
BINDVERB
BSCF
BSCO_OPTION
CALLTYPE
CLSCTX
COINIT
DATADIR
DISCARDCACHE
DOCMISC
DROPEFFECT
DVASPECT
DVASPECT2
DVASPECTINFOFLAG
DVEXTENTMODE
EXTCONN
GUIDKIND
HITRESULT
HLBWIF
HLFNAMEF
HLID
HLINKGETREF
HLINKMISC
HLINKSETF
HLINKWHICHMK
HLNF
HLQF
HLSR
KEYMODIFIERS
LOCKTYPE
MKRREDUCE
MKSYS
MSHCTX
MSHLFLAGS
OLECLOSE
OLECMDF
OLECMDTEXTF
OLECMDEXECOPT
OLECMDID
OLECONTF
OLECREATE
OLEDCFLAGS
OLEGETMONIKER
OLELINKBIND
OLEMISC
OLERENDER
OLEUIPASTEFLAG
OLEUPDATE
OLEVERBATTRIB
OLEWHICHMK
PENDINGMSG
PENDINGTYPE
PICTURE
PICTYPE
POINTERINACTIVE
PRINTFLAG
PROPSETFLAG
QACONTAINERFLAGS
REGCLS
RPC_C_AUTHN_xxx
RPC_C_AUTHN_LEVEL_xxx
RPC_C_AUTHZ_xxx
RPC_C_IMP_LEVEL_xxx
SERVERCALL
STATFLAG
STATSTATE
STGC
STGFMT
STGM
STGMOVE
STGTY
STREAM_SEEK
TYMED
UASFLAGS
USERCLASSTYPE
VIEWSTATUS
Objects
Asynchronous Bind Context Object
Bind Status Callback Object
Binding Object
Hyperlink Object
Hyperlink Browse Context Object
Hyperlink Target Object
URL Moniker Object
Registry Entries
OLE Registry Entries
HKEY_LOCAL_MACHINE\SOFTWARE\Classes
AppID Key
AppID Key
RemoteServerName
ActivateAtStorage
LocalService
ServiceParameters
RunAs
LaunchPermission
AccessPermission
CLSID Key
CLSID Key
AppID
AutoConvertTo
AutoTreatAs
AuxUserType
Control
Conversion
DataFormats
DefaultIcon
InprocHandler
InprocHandler32
InprocServer
InprocServer32
Insertable
Interface
LocalServer
LocalServer32
MiscStatus
ProgID
ToolBoxBitmap32
TreatAs
Verb
Version
ProgID Key
ProgID Key
CLSID
Insertable
Protocol
Shell
VersionIndependentProgID Key
File Extension Key
(Non-Compound) FileType Key
Interface Key
Interface Key
BaseInterface
NumMethods
ProxyStubClsid
ProxyStubClsid32
HKEY_LOCAL_MACHINE\Software\Microsoft\OLE
HKEY_LOCAL_MACHINE\Software\Microsoft\OLE
EnableDCOM
DefaultLaunchPermission
DefaultAccessPermission
LegacyAuthenticationLevel
LegacyImpersonationLevel
LegacyMutualAuthentication
LegacySecureReferences
Glossary
OLE Glossary
|