谁遇到过这个问题,棘手啊
我买了一块运动控制板卡,因为只支持VC和VB,我想用labview调用DLL不知道可行不?下面的操作在labview中应该怎样做呢?labview中应该怎样声明对象,创建对象呢?
请看下面:
4 运动控制器驱动程序的调用
4.1 VB 编程中驱动程序的调用(参见VbExample)
第一步,建立对驱动程序的引用
通过VB 的“工程”—“引用”—“浏览”的菜单选项,找到并建立用户工程对mccdll.dll
的引用
第二步,声明控制卡对象
采用语句Dim MCcard As MotionControlCard 声明其为局部对象或在工程模块中采用
Globle MCcard As MotionControlCard 声明其为全局对象。
第三步,创建控制卡对象
在启动程序中加入下面语句创建控制卡对象:
Set MCcard = New MotionControlCard
通过以上步骤后,即可在用户工程中直接调用驱动程序提供的函数完成所需控制。
4.2 VC 编程中驱动程序的调用(参见VcExample)
第一步,创建支持Active 控件调用的VC 工程
第二步,创建驱动程序类
在VC 工程中采用“建立类向导”从mccdll.dll 文件中加入_MotionControlCard 类。
第三步,在VC 工程初始化函数中加入OLE 初始化代码:
if(!AfxOleInit())
{
AfxMessageBox("OLE 的初始化失败!");
return FALSE;
}
第四步,在用户程序中声明驱动程序对象,加入代码:
#include “mccdll.h”
_MotionControlCard MCcard;
第五步,在用户程序初始化函数中创建驱动程序对象,加入代码:
COleException e;
if(!MCcard.CreateDispatch ("mccdll.MotionControlCard",&e))
{
e.ReportError();
AfxMessageBox("IDispath 连接失败!");
//return;
}
第六步,在用户程序关闭函数中清除驱动程序对象,释放其占用资源,加入代码:
MCcard.ReleaseDispatch ();
通过以上步骤设置后,即可在用户程序中调用MCcard 对象提供的函数来完成所需控制。 可以用CLF http://www.cpubbs.com/bbs/viewthread.php?tid=13221&page=1#pid14195
页:
[1]