函数 (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 | 获取指向调用控制接口的指针,通常 ICancelMethodCalls,该取消对象对应于同一客户端线程或其他客户端线程上挂起的出站 COM 方法调用。 |
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 | 向 OLE 注册 EXE 类对象,以便其他应用程序可以连接到它。 |
CoRegisterInitializeSpy | 注册 IInitializeSpy 接口的实现。 IInitializeSpy 接口是违抗的,允许开发人员在 COM 单元上执行初始化和清理。 |
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 | 释放以前通过调用 CoTaskMemAlloc 或 CoTaskMemRealloc 函数分配的任务内存块。 |
CoTaskMemRealloc | 更改以前分配的任务内存块的大小。 |
CoTestCancel | 确定在服务器上执行的调用是否已由客户端取消。 |
CoTreatAsClass | 建立或删除仿真,其中一个类的对象被视为不同类的对象。 |
CoUninitialize | 关闭当前线程上的 COM 库,卸载线程加载的所有 DLL,释放线程维护的任何其他资源,并强制线程上的所有 RPC 连接关闭。 |
CoUnmarshalHresult | 从指定流取消 HRESULT 类型。 |
CoUnmarshalInterface | 使用前一次调用 CoMarshalInterface 函数写入流的数据初始化新创建的代理,并返回指向该代理的接口指针。 |
CoWaitForMultipleHandles | 等待指定的句柄发出信号,或等待指定的超时期限完成。 |
CoWaitForMultipleObjects | CoWaitForMultipleHandles 主要用于 Windows 应用商店应用和组件。 此替换 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 | 将接口标识符转换为可打印字符字符串。 |