这六个功能有什么区别?
LoadLibrary
LoadLibraryA
LoadLibraryEx
LoadLibraryExA
LoadLibraryExW
LoadLibraryW
winapi中每个后缀的含义是什么?所有这些函数之间有什么区别?
答案 0 :(得分:4)
A
表示ANSI; W
表示宽(Unicode)。
A
版本不支持Unicode字符串;它们是Win9X的遗物。
无后缀版本将在编译时扩展为A
或W
版本,具体取决于是否定义了符号UNICODE
。
Ex
版本是具有附加功能的API方法的较新版本;有关详细信息,请参阅文档。
答案 1 :(得分:4)
LoadLibrary
和LoadLibraryEx
是根据您的项目是否使用unicode支持进行编译而定义的宏。如果是,则他们指向LoadLibraryW
和LoadLibraryExW
,否则他们会指向LoadLibraryA
和LoadLibraryExA
。
通常,您需要使用最终没有A或W的版本编写代码,让编译器定义为您带来所有魔力。
Ex
后缀是表示“EXtended”函数的标准方式:一种类似于常规版本,但提供其他功能。通常,它们是在较新版本的Windows中添加的,并且可能并不总是可用(尽管它们中的大多数现在已经很久了,因此它们已经在Windows 3.1或95中添加回来了。)
如前所述,功能之间的确切差异应始终在MSDN上进行检查。
答案 2 :(得分:1)
A - ansi W - unicode Ex - 相同功能的扩展版本,例如一些附加参数