【发布时间】:2015-06-16 18:24:32
【问题描述】:
如果函数成功,返回值是模块句柄。
如果函数失败,返回值为
NULL。要获取更多错误信息,请致电GetLastError。
而Microsoft support 有一个小于 32 的返回值列表,表示错误
API 函数
LoadLibrary加载 DLL 并返回句柄或错误代码。如果返回值小于 32,则表示出现下列错误之一。返回值大于等于 32 表示成功,应调用FreeLibrary函数卸载库。
第二篇文章最后一次审查是在 2003 年,明确适用于 Visual Basic 4.0。
什么是正确的? LoadLibrary 返回 != 0 或 >= 32 是否成功?或者两者都是正确的,我错过了一些关于版本差异或与 C 样式接口不同的 VB 特定 Windows API 包装器的提示?
【问题讨论】:
-
在 C 中传递无效文件名的快速测试返回
NULL,而不是您链接的 VB 文档中列出的2(未找到文件)。 -
@WeatherVane 这证明不了
-
@DavidHeffernan 这就是为什么我将我的观察作为评论而不是答案发布的原因。
-
@WeatherVane 谢谢。当然,在提问之前我也做过这种测试,但是提到每一次尝试和错误尝试来解决这个问题可能会让这个问题变得臃肿。
-
@Weather:这甚至不是一个有用的评论。你不能从观察中推断出合同保证。提出其他建议是根本错误的。
标签: winapi