labview调用User32.dll(Win7)生成exe运行结束后出错
时间:10-02
整理:3721RD
点击:
程序在开发版上运行正常,生成exe过程也正常,运行exe后关闭窗口会弹出如图所示的对话框,或是用C++调用LabVIEW时就弹出如图所示的对话框。对话框提示:应用程序崩溃,发生异常Access violation(0xc0000005)。各位大神,有什么经验分享的吗,谢谢。
注:程序里面有用LabVIEW调用User32.dll(Win7),屏蔽掉该功能,就不会出现上述对话框。
注:程序里面有用LabVIEW调用User32.dll(Win7),屏蔽掉该功能,就不会出现上述对话框。

。
书读少了
如果把labview宝典读通了这个就不是问题
labview宝典上提出了3种解决办法
我首先到百度上找到了一种
后来仔细读宝典发现还有另外两只解决办法
我先提供一种
另外两种自己翻宝典

可能是路径问题
你可以在exe中增加一个路径显示和VI中的对比一下
因为封装到EXE中相对路径经常发生变化
这个问题已解决(路径我在编程的时候”属性节点-应用程序-类别“里面就已经设置正确了)。具体出现问题是这样的。我在程序中用”调用库函数节点“调用win7系统的user32.dll里面的某个函数,当生成完exe后,LabVIEW会默认的将user32.dll也打包成文件放入data文件夹中,当然也默认会去调用这个生成的user32.dll库,而user32.dll是系统很多应用程序调用的一个库,必须要放在系统安装的那个盘的固定位置,这样才能不影响其他应用程序同时调用这个user32.dll库,因此,只需要在”调用库函数节点“中指定系统 安装的默认位置即可。
没看明白你最后一步怎么做的。
能上图吗?具体怎么做呢?我那样做还是哪个问题
应该就是路径问题,你使用这个路径试试

能上图吗?具体怎么做呢?我那样做还是哪个问题
请问一下,我调用的不是系统动态库,也出现了这个问题,大概会是哪方面的原因呢?
http://digital.ni.com/public.nsf/allkb/CEF99B27F6403AF286257BA400316D65
