• 转贴:[转]所有 OLE api 和接口的目的


    转自http://support.microsoft.com/kb/126157/zh-cn

    http://apps.hi.baidu.com/share/detail/18909481

    比较有用,记录下来供查阅

    常规

    函数: lUnknown
    目的: 控制的接口协商的对象生存期。普遍存在的任何组件,而不考虑实现。QueryInterface 公开传入的接口。

    函数: IEnum
    目的: 枚举的各种类型的列表。在许多情况下,整个 OLE 中使用。

    函数: IProvideClassInfo
    目的: 公开有关对象的传入和传出接口类型信息。

    函数: IConnectionPointContainer IEnumConnectionPoints,IConnectionPoint IEnumConnections
    目的: 公开对象的输出接口。

    初始化和内存管理

    函数: CoBuildVersion OleBuildVersion
    目的: 检查 OLE 库的版本号。

    函数: IMalloc
    目的: 任务内存分配。

    函数: CoInitialize CoUninitialize,OleInitialize OleUninitialize
    目的: 初始化/Uninitialize COM/OLE 库和一个 OLE-提供的安装任务分配器 (大多数 OLE 实现还允许自定义分配器的安装)。

    函数: CoCreateStandardMalloc
    目的: 访问标准任务内存分配器。

    函数: CoGetMalloc
    目的: 访问当前已安装的任务分配器。

    远程处理

    函数: IExternalConnection
    目的: 通知-连接/断开连接从远程进程。

    函数: CoLockObjectExternal
    目的: 锁定一个远程对象的实现。

    函数: CoDisconnectObject
    目的: 强制断开所有远程连接。

    函数: IMarshal
    目的: 此常用封送处理 (OLE 实现) ; 此自定义封送处理 (自定义实现)。

    函数: CoGetStandardMarshal
    目的: 访问标准实现的 IMarshal。

    函数: IStdMarshalInfo
    目的: 自定义接口的支持。

    函数: CoMarshalHresult,CoUnmarshalHresult,CoMarshalInterface,CoUnmarshalInterface,CoReleaseMarshalData
    为标准和自定义封送处理的用途: 帮助者。 例如对于 CoMarshalInterface,始终调用时需要创建到一个新的对象接口指针的远程处理服务器端支持的任何对象。CoUnmarshalInterface 创建客户端以匹配。

    函数: CoIsHandlerConnected
    若要确定是否一个进程内组件连接到远程进程的用途: 帮助器。

    函数: 自定义接口
    目的: 安装自定义 IMessageFilter 实现。

    函数: IMessageFilter
    目的: Helper 函数以 OLE 1 容器文档兼容性。

    函数: CoRegisterMessageFilter
    目的: 并发管理处理接口。远程处理发生时,始终被安装默认实现。

    自定义服务

    函数: CoCreateInstance
    提供一个 CLSID 目的: 访问自定义组件实现。

    函数: IClassFactory [2]
    目的: 创建基于 CLSID 的自定义组件。

    函数: CoGetClassObject
    提供一个 CLSID 目的: 访问自定义类工厂实现。

    函数: DllGetClassObject
    目的: 公开一个自定义类工厂实现从一个 DLL。

    函数: CoRegisterClassObject CoRevokeClassObject
    目的: 安装/删除一个自定义类工厂实现。

    服务注册

    函数: CoCreateGuid IsEqualGUID,IsEqualIID IsEqualCLSID
    用于创建和 guid 进行比较的用途: 帮助器。

    函数: DllRegisterServer DllUnregisterServer
    目的: 公开自注册功能从 DLL 服务器模块。

    函数: CoGetTreatAsClass,CoTreatAsClass,OleDoAutoConvert,OleGetAutoConvert,OleSetAutoConvert,GetConvertStg SetConvertStg
    目的: 转换/仿真操作 (仅自定义为描述哪些类的注册表信息是可以互换)。

    DLL 服务器管理

    函数: DllCanUnloadNow
    目的: 控制 DLL 服务器卸载。

    函数: CoLoadLibrary,CoFreeLibrary,CoFreeAllLibraries CoFreeUnusedLibraries
    目的: 加载和卸载进程内服务器模块。

    杂项的 COM 函数

    函数: CLSIDFrom [程序 id | 字符串],[程序 id | 字符串] FromCLSID,IIDFromString,StringFromIID StringFromGUID2
    目的: Helper 函数 guid、 字符串,和 ProgIDs 之间的转换。

    函数: CoGetCurrentProcess
    目的: 杂项帮助器。

    函数: CoDosDateTimeToFileTime,CoFileTimeToDosDateTime,CoFileTimeNow
    日期/时间转换的的目的: 杂项 helper 函数。(是 Win32 API 更适合)。

    函数: IsValidIid IsValidInterface,IdValidPtrIn IsValidPtrOut
    目的: 其他的验证函数 (仅限于 16 位)。

    命名 (名字对象)

    函数: IMoniker
    目的: 公开名字对象的功能。OLE 提供的五个名字对象实现 (五个不同的类)。可以通过对象创建函数或自定义的 API 公开自定义实现。

    函数: BindMoniker
    目的: IMoniker::BindToObject 的包装。

    函数: CreateFileMoniker,CreateItemMoniker,CreateAntiMoniker,CreatePointerMoniker,CreateGenericComposite
    目的: 访问 OLE 标准的名字对象实现。

    函数: IParseDisplayName
    目的: 在分析 user-readable 显示名称到标准或自定义名字对象的自定义对象上实现。

    函数: IOleContainer IOleItemContainer
    目的: 时通常与 OLE 文档,这些接口实现中包含的项,需要将绑定项名字对象的对象。

    函数: IBindCtx
    目的: 实现 OLE 标准"绑定上下文"对象上。

    函数: CreateBindCtx
    目的: 实例化一个绑定上下文对象,返回一个 IBindCtx 指针。

    函数: IRunningObjectTable
    目的: 从公开 OLE 实现"正在运行对象表"的服务。 没有自定义设置。

    函数: GetRunningObjectTable
    目的: 访问运行对象表。

    函数: MkParseDisplayName
    目的: 转换到包括以确定其实现 IParseDisplayName 来使用的智能标记的字符串。

    函数: MonikerRelativePathTo MonikerCommonPrefixWith
    操作要创建绝对和相对路径使用 IMoniker::RelativePathTo 和 IMoniker::CommonPrefixWith 文件名字对象的用途: 帮助者。

    结构化的存储

    函数: IStorage
    目的: 公开存储对象功能 (目录)。

    函数: IStream
    目的: 公开流对象功能 (文件)。

    函数: IRootStorage
    目的: 控制基础文件附加到一个 IStorage 复合文件中。

    函数: ILockBytes
    目的: 自定义复合文件中的基础存储媒体。

    函数: StgCreateDocfile StgOpenStorage
    目的: 创建或打开 OLE 的复合文件 (IStorage/IRootStorage) 实现使用默认的基于文件的 ILockBytes 实现。

    函数: StgCreateDocfileOnILockBytes StgOpenStorageOnILockBytes
    目的: 创建或打开 OLE 的复合文件 (IStorage/IRootStorage) 使用自定义 ILockBytes 实现的实现。

    函数: StgIsStorageFile StgIsStorageILockBytes
    目的: 检查文件是否与 ILockBytes 的默认实现或自定义实现复合文件。

    函数: CreateILockBytesOnHGlobal GetHGlobalFromILockBytes
    目的: 访问基于内存的 ILockBytes 实施。

    函数: CreateStreamOnHGlobal GetHGlobalFromStream。
    目的: 访问基于内存的 IStream 实施。

    函数: [读取 | 写入] 类 [Stg | Stm],[读取 | 写入] FmtUserTypeStg,GetClassFile
    目的: 检索或保存到存储或流的 CLSID、 数据格式和类型的用户信息。

    函数: StgSetTimes
    目的: Helper 函数操作复合文件时间戳。

    永久对象

    函数: IPersist,IPersistFile,IPersist 存储,IPersistStream [初始化]
    目的: 从一个存储模型所基于的持久对象公开: 文件-基于、 基于 IStorage、 IStream 基于 (带有或不初始化)。

    通知/事件

    函数: IAdviseSink [2]
    目的: 接收的数据更改的通知查看复合文档对象发生更改的更改。

    函数: IPropertyNotifySink
    目的: 接收的属性更改和控制可重写更改的通知。

    函数: 事件集
    目的: 接口定义由某个对象,由外部事件接收器实现。

    统一数据传输

    函数: IDataObject,(IAdviseSink) IEnumFORMATETC
    目的: 公开交换格式的数据结构和一个向数据更改的通知接收器通知的能力。

    函数: OleDuplicateData
    用于复制的数据结构的用途: 帮助器函数。

    函数: ReleaseStgMedium
    若要释放的数据结构的用途: 帮助器。

    可查看的对象

    函数: IViewObject [2] (IAdviseSink)
    目的: 公开绘制到设备上下文的可视化的演示文稿,并通知向视图的更改的通知接收器的能力。

    函数: OleDraw
    目的: IViewObject::Draw 的简单包装。

    函数: OleGetIconOfFile OleGetIconOfClass 在 OleMetafilePictFromIconAnd-标签
    用于操作的对象的图标视图的用途: 帮助器函数。

    函数: OleTranslateColor
    目的: 到 COLORREF 和 OLE_COLOR 类型之间进行转换的帮助。

    标准的类型

    函数: IFont IFontDisp
    目的: 公开标准字体对象实现 (OLE 控件)。

    函数: OleCreateFontIndirect
    目的: 访问标准字体对象实现。

    函数: IPicture IPictureDisp
    目的: 公开标准图片对象实现 (OLE 控件)。

    函数: OleCreatePictureIndirect
    目的: 访问标准图片对象实现。

    函数: OleLoadPicture
    目的: 从流的信息创建图片对象。

    函数: OleIconToCursor
    目的: Helper 函数以图标转变为游标简单的 win32 API 基于拖放 (不是 OLE 拖动和放置)。 >

    OLE 剪贴板

    函数: OleSetClipboard,OleGetClipboard,OleFlushClipboard OleIsCurrentClipboard
    目的: 用于处理服务通过 IDataObject 剪贴板的 API。除了为涉及任何 IDataObject 实现,则没有自定义。

    OLE 拖放

    函数: IDropSource
    目的: 公开拖动和拖放操作中的源端功能。

    函数: IDropTarget
    目的: 公开拖动和拖放操作中的目标端功能。

    函数: DoDragDrop
    目的: 安装 IDropSource (和 IDataObject) 实现,以开始拖动和拖放操作。

    函数: RegisterDragDrop RevokeDragDrop
    目的: 安装/卸载一个拖放目标的实现。仅向 DoDragDrop 公开拖放目标。

    类型库

    函数: ITypeLib ITypeInfo
    目的: 标准 OLE 实现类型库结构中导航。

    函数: ITypeComp
    若要将绑定到一个有用的编译器的效率更高方式在类型库中定义的接口函数的用途: 标准 OLE 实现。

    函数: LHashValOfName [系统]
    目的: 创建 ITypeComp 函数中使用的哈希值。

    函数: LoadTypeLib,LoadRegTypeLib,LoadTypeLibFromResource,RegisterTypeLib,QueryPathOfRegTypeLib
    用于注册和加载类型库的用途: 帮助者。正在加载类型库表示类型库的对象与 ITypeLib 对其进行实例化。也就负载 [注册表] 类型库 [FromResource] 访问标准 ITypeLib 实现。

    函数: CreateTypeLib
    目的: 创建一个新的类型库 (而不是以加载一个现有)。类型库实现 ICreateTypeLib。 通常从类型库编译器使用。

    函数: ICreateTypeLib ICreateTypeInfo
    OLE 用于创建类型库中的用途: 实现。从类型库编译器使用。

    函数: CreateDispTypeInfo
    目的: 创建与 ITypeInfo 基于 INTERFACEDATA 结构的类型信息对象。

    函数: CompareStringA、 LCMap StringA、 GetLocaleInfoA、 获取 StringTypeA、 GetSystemDefault [LangID | LCID],GetUser 默认 [LangID | LCID]
    用于使用 OLE 自动化中的特定于区域设置的信息的用途: 帮助器函数。它们主要用于 Win16 平台为相同的功能是标准的 Win32 API 的一部分。

    OLE 自动化

    函数: IDispatch IEnumVARIANT
    目的: 公开方法和属性通过调度 (DISPID) 机制,以及"集合。

    函数: CreateStdDispatch
    目的: 标准 IDispatch 到安装自定义的接口实现。也就将访问一个标准的 IDispatch 内部依赖于自定义接口实现的。

    函数: DispGetIDOfNames,DispGetParams,DispInvoke
    目的: 帮助器直接实现的功能或 IDispatch 的使用。

    函数: RegisterActiveObject,RevokeActiveObject,GetActiveObject
    目的: Helper 函数以注册为运行和 $ 访问运行对象的自动化对象。基本上包装运行对象表。

    函数: safearray 之所以-AccessData、 AllocData、 AllocDescriptor,复制、 创建和销毁,DestroyData、 DestroyDescriptor、 GetDim、 GetElement、 GetElemSize、 GetLBound、 GetUBound、 锁定、 PutElement,Redim,UnAccessData,解除
    目的: 通过 IDispatch 的 Helper 函数用于操作数组传递。

    函数: 系统-AllocString AllocStringLen,FreeString,ReAllocString,ReAllocStringLen StringLen
    目的: Helper 函数以操作 BSTR 类型。

    函数: [Ex] ChangeType Variant-清除,副本,CopyInf,初始化 TimeToDosDateTime ; (DosDateTimeToVarantTime)
    目的: Helper 函数以处理变量传入的 VARIANT 类型转换和复制等的结构。

    OLE 属性页

    函数: OleCreatePropertyFrame-[间接]
    目的: 访问标准实现的属性页的框架实现 IPropertyPageSite 的。

    函数: IPropertyPageSite
    目的: 公开的功能作为属性页面框架。

    函数: ISpecifyPropertyPages
    目的: 暴露 CLSIDs 的对象的属性页 (它们是单独的对象)。

    函数: IPropertyPage [2]
    目的: 公开属性页功能。

    函数: IPerPropertyBrowsing
    目的: 公开该操作的各个属性的能力。

    OLE 文档: 常规

    函数: OleRegGetUserType,OleRegGetMiscStatus,OleRegEnumFormatEtc OleRegEnumVerbs
    对于默认注册表处理的用途: 帮助器函数 (OLE 文档多数情况下)。

    函数: IRunnableObject
    当将一个对象的目的: 通知之间加载并正在运行。

    函数: OleIsRunning,OleLockRunning,OleRun,OleNoteObjectVisible OleSetContainedObject
    正在运行的对象的复合文档中的控件的的用途: 帮助者。 这些函数中的大多数调用 IRunnableObject 成员。

    函数: IOleAdviseHolder
    用于管理 IAdviseSink 指针从一个复合文档对象实现内的用途: 帮助器函数。

    函数: CreateOleAdviseHolder
    目的: 访问 IOleAdviseHolder 对象的 OLE 实现。没有自定义。

    函数: OleLoad OleLoadFromStream,OleSave OleSaveToStream
    目的: 函数加载和保存在 IStorage 或 IStream 实例中的复合文档对象。IPersistStorage 和 IPersistStream 调用的包装。

    函数: OleCreateStaticFromData
    目的: 访问的静态对象的 OLE 实现。

    OLE 文档: 处理程序和缓存

    函数: OleCreateDefaultHandler OleCreateEmbeddingHelper
    目的: 访问的默认处理程序或 $"嵌入帮助器"的 OLE 实现 (cut-rate 的默认处理程序相同进程对象)。

    函数: IOleCache [2]
    目的: 实现默认情况下,只要通过 OLE、 进程内处理程序和复合文档中的服务器使用可以自定义。

    函数: CreateDataCache
    目的: 访问 OLE 数据的缓存实现 (服务)。高速缓存对象实现接口包括 IOleCache [2]、 IOleCacheControl、 IDataObject、 IViewObject [2] 和 IPersistStorage 一个的数字。

    函数: IOleCacheControl
    目的: 实现 OLE 的默认处理程序来访问远程服务器的 IDataObject 实现中。在 OLE 文档中使用。

    OLE 文档: 嵌入

    函数: IOleObject
    目的: 公开复合文档对象功能。

    函数: IOleClientSite
    目的: 提供容器端信息和到复合文档对象的函数。

    函数: OleCreate OleCreate-FromData OleCreateFromFile ; OleQueryCreateFromData
    目的: 访问的具体情况取决于源信息所在的嵌入复合文档对象的自定义实现)。 OleQueryCreate FromData 检查是否 OleCreateFromData 将起作用。

    OLE 文档: 链接

    函数: IOleLink
    目的: 从进程内实现的 (通常来自 OLE 的默认处理程序) 的链接的复合文档对象公开。

    函数: OleCreateLink OleCreateLinkFromData,OleCreateLinkToFile ; OleQueryCreateLinkFromData
    目的: 访问的具体情况取决于源信息所在的链接的复合文档对象的自定义实现)。 检查是否 OleCreateLinkFromData 起一个 OleQueryCreate LinkFromDat。

    函数: IOleContainer IOleItemContainer
    目的: 枚举泛型容器内的对象 (通常复合文档容器但不是一定)。 IOleItemContainer 支持绑定一个项名字对象的额外的步骤。

    OLE 文档:-当前位置激活

    函数: IOleInPlaceObject IOleInPlaceActiveObject
    目的: 公开对象端 (从 IOleWindow 派生接口) 的就地激活模式支持的功能。

    函数: IOleInPlaceFrame,IOleInPlaceUIWindow,IOleInPlaceSite
    目的: 公开为就地激活模式支持 (从 IOleWindow 派生接口) 的容器端功能。

    函数: OleCreateMenuDescriptor OleDestroyMenuDescriptor,OleSetMenuDescriptor OleTranslateAccelerator
    在就地激活的目的: 提供 OLE helper 函数。

    OLE 文档: OLE 1 兼容性

    函数: CoIsOle1Class
    若要检查类是否 OLE 1 复合文档对象的用途: 帮助器。

    函数: OleConvertIStorageToOLE 流 [Ex],OleConvertOLE STREAMToIStorage [Ex]
    目的: Helper 函数提供与 OLE 1 兼容性的容器的复合文档。

    OLE 控件

    函数: IOleControl
    目的: 公开 OLE 控件详细信息,以处理键盘助记键和环境属性的更改之间的容器。

    函数: IOleControlSite
    目的: 到 OLE 控件公开 OLE 控件容器细节。

    函数: ISimpleFrameSite
    目的: 公开一个 OLE 控件是只是一个视觉图文筛选邮件,转到其内部控件 (如单选按钮) 的控件的一组提供组行为的其他控件的一组。

  • 相关阅读:
    git版本回退:git reset --hard 版本号
    cheerio中文文档
    疫情实时大数据报告(利用nodejs)
    Package.json 属性说明
    11 个Chrome骚技巧让你为所欲为
    vue刷新页面空白分两种情况
    修改i输入框中placeholder的样式
    input输入框显示不全是用省略号...代替
    PC端适应屏幕分辨率
    CSS设置滚动条样式
  • 原文地址:https://www.cnblogs.com/carl2380/p/1933794.html
Copyright © 2020-2023  润新知