c++ - LabVIEW 和 C++ DLL

标签 c++ c dll dns labview

我正在研究一些数据在 LabVIEW 和 DLL 之间传递的问题。 我想知道如何实现一个函数,LabVIEW以字符串形式向DLL提供唯一的名称,然后DLL根据名称返回一个指向特定内存块的指针。 换句话说,它就像网络领域中的域名和IP地址之间的关系一样。 但“名称”是用户定义的,我返回在运行时为名称动态分配的指针。这意味着该关系不是预定义的。没有可遵循的查找表。

示例: int* Mydll(char* 名称);

我认为这是 C++ 中的某种“对指针的引用”,但我不太确定。如果是这样,我该如何实现?

最佳答案

  1. 删除调用库节点。
  2. 根据您的平台位数将返回类型配置为“int32”或“int64”(LV不处理原始指针,但如果您的DLL返回指针,LV可以保留该数值,直到您准备好传递它传递给其他知道如何处理它的 DLL 调用)。
  3. 添加参数。将其配置为“String”类型并将传递方法设置为“C String Pointer”并启用“Constant”复选框。

这样就可以了。您可以将此图像直接拖放到程序框图上(它是一个 VI 片段)来创建这样的节点 - 只需配置 DLL 和函数名称即可。

enter image description here

关于c++ - LabVIEW 和 C++ DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32666566/

相关文章:

c++ - 如何在 C 风格的类声明中使用 NSInteger

c++ - 如何在我的 C++ 程序中显示 Windows 的 "DLL not found"错误?

c++ - 使用 Visual Studio 创建 C++ DLL

c++ - __stdcall typedef g++ 问题

c++ - 删除指针

c++ - 未定义引用

"delete-event"信号的回调函数传递了错误的变量值

c - C 中的蛮力 for 3Sum - 但我如何检测重复的三胞胎?

结构的 C 变量成员列表,这可能吗?

c++ - Excel VBA,无法从 DLL 文件中找到 DLL 入口点