windows - 何时以及为何使用 CoLoadLibrary?

标签 windows com interop com-interop

CoLoadLibrary() 的描述说它的作用与 LoadLibraryEx() 几乎相同 - 将 DLL 加载到进程中。 COM 类创建函数 - CoCreateInstance() 和 CoGetClassObject() - 都将必要的 DLL 加载到进程中。

那么为什么首先需要 CoLoadLibrary() 以及如何使用它?

最佳答案

看一下代码:

mov     edi,edi
push    ebp
mov     ebp,esp
push    8
push    0
push    dword ptr [ebp+8]
call    dword ptr [ole32!_imp__LoadLibraryExW (71eb1214)]
pop     ebp
ret     8

所以它只是调用:

LoadLibraryEx( FileName, NULL, LOAD_WITH_ALTERED_SEARCH_PATH ).

据推测,该例程的存在仅仅是为了向后兼容——它可能起源于 Win16。

关于windows - 何时以及为何使用 CoLoadLibrary?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/827988/

相关文章:

windows - 从 EXE COM 服务器检测客户端进程终止

.net - Windows .Net应用程序崩溃看门狗

windows - 如何最好地将 CString 转换为 BSTR 以将其作为 "in"参数传递给 COM 方法?

c# - Microsoft.Office.Interop.PowerPoint.dll PowerPoint CustomDocumentProperties 大问题

java - 在 Scala 中,如何覆盖采用 java.util.Map 的方法

c# - 从 C# 中的后台线程更新 Excel 2003 中的复选框有时会失败

c# - 使用 FormattedText 对象,我如何找出我的文本实际显示了多少?

c++ - 如何在 C 中显示 _getch() 字符的整数值?

windows - 我什么时候应该在 HKCR\Interface 中注册我的 COM 接口(interface)?

c# - 绑定(bind)到使用 CreateObject 创建的已打开表单