导入共享库向导疑难解答
- 更新时间2025-08-27
- 阅读时长2分钟
向导未找到任何函数
导入共享库向导选择待转换函数页的函数列表将列出指定共享库文件中的所有函数。如向导解析头文件后没有显示任何函数,请检查至共享库文件的路径是否正确,库中是否包含函数。
向导已找到函数,但是不能导出函数
导入共享库向导列出了指定共享库文件中的所有函数,但是只能导入向导从头文件中正确解析的函数。在选择待转换函数页函数列表中选择函数时出现的警告可以帮助确定可能的问题。检查头文件是否包含所有可能的函数声明。每个函数声明都必须包括调用规范、返回值的数据类型,以及定义的参数。要修改头文件,可直接编辑文件,或使用向导的配置包括路径和预处理定义页,添加符号定义。
如已定义WIN32,头文件的下列范例代码将只编译functionA:
#ifdef WIN32 int functionA(int para); #endif
如希望LabVIEW导入functionA,但是头文件未定义WIN32,可直接编辑头文件定义WIN32,或在导入共享库向导中定义WIN32。要在向导中定义WIN32,在配置包括路径和预处理定义页的预处理定义文本框中输入WIN32。
下列范例代码是头文件中的另一个函数。在这种情况下,由于没有对NIAPI进行定义,LabVIEW将无法识别符号:
NIAPI int functionA(intpara);
如需LabVIEW导入该函数,可在预处理定义文本框中添加NIAPI=_stdcall,定义NIAPI。
向导未找到任何已声明函数
函数列表只显示共享库中出现的函数。如头文件包括未出现在共享库中的函数,向导将不列出这些函数。要查看头文件中声明的所有函数,无论其是否出现在共享库文件中,在向导选择共享库和头文件页上勾选共享库不在本地机器上复选框。返回选择待转换函数页时,向导将列出头文件声明的所有函数。生成包装VI前,确保取消勾选该复选框。
向导未找到嵌套的头文件
如指定的头文件包含嵌套的头文件,必须在向导的配置路径和预处理定义页的包括路径文本框中提供嵌套文件的路径。如未指定嵌套文件的包括路径,向导就不能正确解析头文件。