20250811-ai-for-3rd-party-labview-driver-warpper-generate

准备工作

请阅读当前工程目录下的文件并分析其功能,生成Readme.txt.

当前目录下demo.cpp和demo.h通过1394.h实现了对1394.dll的调用,演示了1394板卡的调用方法,请更新到Readme.txt

生成项目

请阅读 ReadMe.txt 并理解本项目软件架构,参考demo.cpp的调用方法。生成一个封装dll的项目,以实现其他编程环境的调用,我使用的编程环境不支持结构体内的指针,请做适当的设配。

封装技巧

内存处理技巧1

我在使用重新封装的Fcwarpper.dll时,出现了内存损坏错误,我怀疑是没有使用正确的buf_length信息.

并且调用原始APi的部分请参考以下代码,尤其是分配内存的部分。

demo\fc_demo.c

UINT CALLBACK FH_190_DemoStartLoop(PVOID context)

内存处理技巧2

原始的API函数应该用buf_length指示(char*)buf的长度,但是我使用的语言不支持动态分配内存,我需要将该代码重构为以下两个函数,第一部分的函数调用申请足够的内存大小,并调用原始API,返回所有其他参数,对buf特殊处理,每次固定返回8192的buf大小以及有效数据长度,并有一个布尔返回参数指示数据是否返回了全部数据,如果未返回全部数据,需要使用另一个函数每次返回剩余的固定的8192缓冲区大小及有效数据长度,我的程序会如此反复调用第二个函数直到返回所有的数据。