函数 (COM)

COM 提供以下函数。

函数 说明
BindMoniker 通过名字对象查找对象,如果对象处于非活动状态,则激活该对象,并检索指向该对象上指定接口的指针。
CLSIDFromProgID 在给定 ProgID 的注册表中查找 CLSID。
CLSIDFromProgIDEx 如果启用 COMClassStore 策略,则触发自动安装。
CLSIDFromString StringFromCLSID 函数生成的字符串转换回原始 CLSID。
CoAddRefServerProcess 递增每个进程的全局引用计数。
CoAllowSetForegroundWindow 使调用的 COM 服务器进程能够使用 IForegroundTransfer 接口从客户端应用程序中获得焦点。
CoAllowUnmarshalerCLSID 将 unmarshaler CLSID 添加到仅调用进程的允许列表。
CoCancelCall 请求取消指定线程上挂起的出站 DCOM 方法调用。
CoCopyProxy 创建指定代理的专用副本。
CoCreateFreeThreadedMarshaler 创建能够进行上下文相关封送的可聚合对象。
CoCreateGuid 创建 GUID,即 CLSID 和接口标识符使用的唯一 128 位整数。
CoCreateInstance 创建与指定 CLSID 关联的类的单个未初始化对象。
CoCreateInstanceEx 在特定计算机上创建特定类的实例。
CoCreateInstanceFromApp 从应用容器内在特定计算机上创建特定类的实例。
CoDisableCallCancellation 撤消调用 CoEnableCallCancellation 的操作。
CoDisconnectContext 断开代表指向当前上下文中对象的所有接口指针进行维护的所有代理连接。
CoDisconnectObject 断开代表指向指定对象的所有接口指针进行维护的所有远程进程连接。
CoDosDateTimeToFileTime 将时间和日期的 MS-DOS 表示形式转换为 Windows 使用的 FILETIME 结构。
CoEnableCallCancellation 启用取消调用线程的同步调用。
CoFileTimeNow FILETIME 结构的形式返回当前时间。
CoFileTimeToDosDateTime FILETIME 转换为 MS-DOS 日期和时间值。
CoFreeAllLibraries 释放已使用 CoLoadLibrary 函数(由 CoGetClassObject 在内部调用)加载的所有 DLL,无论它们当前是否正在使用。
CoFreeLibrary 释放一个库,该库在加载时被指定为显式释放。
CoFreeUnusedLibraries 卸载任何不再使用的 DLL。
CoFreeUnusedLibrariesEx 卸载任何不再使用且卸载延迟已过期的 DLL。
CoGetApartmentType 查询当前单元类型和类型限定符。
CoGetCallContext 检索当前线程上当前调用的上下文。
CoGetCallerTID 返回指向包含调用方线程的单元 ID 的 DWORD 的指针。
CoGetCancelObject 获取与同一或其他客户端线程上挂起的出站 COM 方法调用对应的取消对象上指向调用控制接口的指针(通常为 ICancelMethodCalls)。
CoGetClassObject 提供指向与指定 CLSID 关联的类对象上的接口的指针。
CoGetContextToken 返回指向当前上下文的 IObjContext 实现的指针。
CoGetCurrentLogicalThreadId 返回当前物理线程的逻辑线程 ID。
CoGetCurrentProcess 返回当前线程的唯一值。 CoGetCurrentProcess 可用于避免线程 ID 重用问题。
CoGetInstanceFromFile 创建一个新对象并使用 IPersistFile::Load 从文件对其进行初始化。
CoGetInstanceFromIStorage 创建一个新对象,并通过内部调用 IPersistFile::Load 从存储对象对其进行初始化。
CoGetInterceptor 实例化要截获的指定接口的相应拦截器,并返回新创建的侦听器。
CoGetInterfaceAndReleaseStream 取消封送包含接口指针的缓冲区,并在将接口指针从另一个线程封送到调用线程时释放流。
CoGetMalloc 检索指向默认 OLE 任务内存分配器的指针(支持 IMalloc 接口的系统实现),以便应用程序可以调用其方法来管理内存。
CoGetMarshalSizeMax 返回将指定接口指针封送到指定对象所需的字节数的上限。
CoGetObject 将显示名称转换为标识命名对象的名字对象,然后绑定到名字对象标识的对象。
CoGetObjectContext 返回当前对象的上下文。
CoGetPSClsid 返回实现指定接口的代理和存根的 DLL 的 CLSID。
CoGetStandardMarshal 根据调用方在客户端进程或服务器进程中创建默认或标准封送对象,并返回指向该对象的 IMarshal 实现的指针。
CoGetStdMarshalEx 创建轻型客户端处理程序使用的聚合标准封送处理器。
CoGetSystemSecurityPermissions 返回计算机范围内启动和访问权限的安全描述符的默认值以及启动和访问限制。
CoGetTreatAsClass 返回可以模拟指定对象的对象的 CLSID。
CoHandlePriorityEventsFromMessagePump 为短时间运行的基础结构 COM 调用和其他高优先级或短时间运行 COM 工作提供在消息之间调度的机会。
CoImpersonateClient 使服务器能够在调用期间模拟当前调用的客户端。
CoInitialize 初始化当前线程上的 COM 库,并将并发模型标识为单线程单元 (STA)。
CoInitializeEx 初始化 COM 库供调用线程使用,设置线程的并发模型,并根据需要为线程创建新单元。
CoInitializeSecurity 注册安全性并设置进程的默认安全值。
CoInstall 安装所需的 COM 服务器应用程序。
CoInvalidateRemoteMachineBindings 服务控制管理器刷新指定计算机的任何缓存 RPC 绑定句柄。
CoIsHandlerConnected 确定远程对象是否连接到相应的进程内对象。
CoIsOle1Class 确定指定的 CLSID 是否表示 OLE 1 对象。
CoLoadLibrary 将特定 DLL 加载到调用方的进程中。
CoLockObjectExternal 调用以锁定对象,以确保其保留在内存中,或释放此类锁。
CoMarshalHresult HRESULT 封送到指定的流,从中使用 CoUnmarshalHresult 函数取消封送。
CoMarshalInterface 将在某些客户端进程中初始化代理对象所需的数据写入流。
CoMarshalInterThreadInterfaceInStream 将接口指针从一个线程封送至同一进程中的另一个线程。
CoQueryAuthenticationServices 检索在进程调用 CoInitializeSecurity 时注册的身份验证服务的列表。
CoQueryClientBlanket 由服务器调用,以了解调用当前线程上执行的方法的客户端。
CoRegisterActivationFilter 注册进程范围的筛选器以处理激活请求。
CoRegisterChannelHook 注册通道挂钩。
CoQueryProxyBlanket 检索客户端用于对指定代理进行调用的身份验证信息。
CoRegisterClassObject 将 EXE 类对象注册到 OLE,以便其他应用程序可以连接到该对象。
CoRegisterInitializeSpy 注册 IInitializeSpy 接口的实现。 定义允许开发人员在 COM 单元上执行初始化和清理的 IInitializeSpy 接口。
CoRegisterMallocSpy 注册 IMallocSpy 接口的实现,此后要求 OLE 围绕对相应 IMalloc 方法的每个调用调用其包装器方法。
CoRegisterMessageFilter 向 OLE 注册 IMessageFilter 接口的实例,该接口用于处理当前线程上的并发问题。
CoRegisterPSClsid 使下载的 DLL 能够在正在运行的进程内注册其自定义接口,以便封送代码能够封送这些接口。
CoRegisterSurrogate 通过其 ISurrogate 接口指针注册代理项进程。
CoReleaseMarshalData 销毁以前封送的数据包。
CoReleaseServerProcess 递减每个进程的全局引用计数。
CoResumeClassObjects 由可以注册多个类对象的服务器调用,以通知 SCM 所有已注册的类,并允许这些类对象的激活请求。
CoRevertToSelf 还原执行线程上的身份验证信息。
CoRevokeClassObject 通知 OLE,以前注册到 CoRegisterClassObject 函数的类对象不再可用。
CoRevokeInitializeSpy 撤销 IInitializeSpy 接口的已注册实现。
CoRevokeMallocSpy 撤销已注册的 IMallocSpy 对象。
CoSetCancelObject 设置(注册)或重置(取消注销)一个取消对象,以便在当前线程的后续取消操作期间使用。
CoSetMessageDispatcher 注册或取消注册每线程消息调度程序,当 ASTA 线程上有可用于在 COM 等待 API 中调度的窗口消息时,将调用该调度程序。
CoSetProxyBlanket 设置将用于对指定代理进行调用的身份验证信息。
CoSuspendClassObjects 阻止在进程内注册的所有类对象上从 SCM 发出任何新的激活请求。
CoSwitchCallContext 切换 CoGetCallContext 使用的调用上下文对象。
CoTaskMemAlloc IMalloc::Alloc 相同的操作方式分配任务内存块。
CoTaskMemFree 释放以前通过调用 CoTaskMemAllocCoTaskMemRealloc 函数分配的任务内存块。
CoTaskMemRealloc 更改以前分配的任务内存块的大小。
CoTestCancel 确定在服务器上执行的调用是否已由客户端取消。
CoTreatAsClass 建立或删除仿真,其中一个类的对象被视为不同类的对象。
CoUninitialize 关闭当前线程上的 COM 库,卸载线程加载的所有 DLL,释放线程维护的任何其他资源,并强制线程上的所有 RPC 连接关闭。
CoUnmarshalHresult 拆收指定流中的 HRESULT 类型。
CoUnmarshalInterface 使用上一次调用 CoMarshalInterface 函数写入流中的数据初始化新创建的代理,并返回指向该代理的接口指针。
CoWaitForMultipleHandles 等待指定的句柄发出信号,或等待指定的超时期限结束。
CoWaitForMultipleObjects CoWaitForMultipleHandles 的替代项主要用于 Microsoft Store 应用和组件。 此替换 API 隐藏 ASTA 中不支持的 CoWaitForMultipleHandles 选项。
CreateAntiMoniker 创建并返回新的反名字对象。
CreateAsyncBindCtx 创建异步名字对象使用的异步绑定上下文。
CreateBindCtx 返回指向 IBindCtx(绑定上下文对象)实现的指针。 此对象存储有关特定名字对象绑定操作的信息。
CreateClassMoniker 创建引用指定类的类名字对象。
CreateFileMoniker 创建基于指定路径的文件名字对象。
CreateGenericComposite 执行两个名字对象的泛型组合,并提供指向生成的复合名字对象的指针。
CreateItemMoniker 创建一个项名字对象,用于标识包含对象(通常是复合文档)中的对象。
CreateObjrefMoniker 创建基于指向对象的指针的 OBJREF 名字对象。
CreatePointerMoniker 创建基于指向对象的指针的指针名字对象。
DllCanUnloadNow 确定实现此函数的 DLL 是否正在使用。 否则,调用方可以从内存中卸载 DLL。
DllDebugObjectRPCHook 由 DLL 导出以启用远程调试。
DllGetClassObject 从 DLL 对象处理程序或对象应用程序检索类对象。
DllRegisterServer 指示进程内服务器为此服务器模块支持的所有类创建其注册表项。
DllUnregisterServer 指示进程内服务器仅删除通过 DllRegisterServer 创建的条目。
GetClassFile 返回与指定文件名关联的 CLSID。
GetRunningObjectTable 返回指向本地运行对象表 (ROT) 上的 IRunningObjectTable 接口的指针。
IIDFromString 将 StringFromIID 函数生成的字符串转换回原始接口标识符 (IID)。
初始化 初始化线程以使用 Windows 运行时 API。
IsAccelerator 确定指定的击键是否映射到指定快捷键表中的加速器。
IsEqualCLSID 确定两个 CLSID 是否相等。
IsEqualGUID 确定两个 GUID 是否相等。
IsEqualIID 确定两个接口标识符是否相等。
MkParseDisplayName 将字符串转换为标识由字符串命名的对象的名字对象。
MonikerCommonPrefixWith 创建基于此名字对象(包含此名字对象的数据)与另一个名字对象共享的通用前缀的新名字对象。
MonikerRelativePathTo 提供一个名字对象,当组合到第一个指定的名字对象(或具有类似结构的名字对象)的末尾时,将生成第二个指定的名字对象。
OleDoAutoConvert 如果在注册表中为该对象类设置了自动转换,则自动将对象转换为新类。
OleGetAutoConvert 确定是否为指定的 CLSID 的对象设置注册表,以便自动转换为另一个 CLSID,如果是,则检索新的 CLSID。
OleGetIconOfClass 返回包含指定 CLSID 图标和字符串标签的图元文件的句柄。
OleGetIconOfFile 返回包含指定文件名图标和字符串标签的图元文件的句柄。
OleIconToCursor 将图标转换为光标。
OleRegGetMiscStatus 返回有关注册表中指定 CLSID 支持的表示形式和行为的其他信息。
OleRegGetUserType 从注册表中获取指定类的用户类型。
OleSetAutoConvert 指定在加载该类的对象时自动转换为其他类的 CLSID。
ProgIDFromCLSID 检索给定 CLSID 的 ProgID。
StringFromCLSID 将 CLSID 转换为可打印字符的字符串。 不同的 CLSID 始终转换为不同的字符串。
StringFromGUID2 将全局唯一标识符 (GUID) 转换为可打印字符的字符串。
StringFromIID 将接口标识符转换为可打印字符的字符串。