Qizhen's profileLabVIEWPhotosBlogListsGuestbook Tools Help
O Troupe of little vagrants of the world, leave your footprints in my words.

Comments (154)

Please wait...
Sorry, the comment you entered is too long. Please shorten it.
You didn't enter anything. Please try again.
Sorry, we can't add your comment right now. Please try again later.
To add a comment, you need permission from your parent. Ask for permission
Your parent has turned off comments.
Sorry, we can't delete your comment right now. Please try again later.
You've exceeded the maximum number of comments that can be left in one day. Please try again in 24 hours.
Your account has had the ability to leave comments disabled because our systems indicate that you may be spamming other users. If you believe that your account has been disabled in error please contact Windows Live support.
Complete the security check below to finish leaving your comment.
The characters you type in the security check must match the characters in the picture or audio.

To add a comment, sign in with your Windows Live ID (if you use Hotmail, Messenger, or Xbox LIVE, you have a Windows Live ID). Sign in


Don't have a Windows Live ID? Sign up

耀斌 张wrote:
阮工:
  从您的书上看到LV调用C++ DLL需要再创建一个接口DLL。如何创建??工作中刚好遇到个问题请帮忙。客户用VC++写的DLL,我用labview调用进行二次开发,下面是DLL的头文件(不全,DLL为VC++  MFC下生成的),函数返回值为空时用CLF可以调用,返回值为CString的都无法调用,请务必帮忙指点下,谢谢!
#pragma once/*--------------------------------------------------------------------------*//* CONSTANTS DECLARATION *//*--------------------------------------------------------------------------*/#ifdef _AF_EFS_ACCESS_LIB #define EFS_ACCESS_DLLEXT extern "C"__declspec(dllexport) #else #define EFS_ACCESS_DLLEXT extern "C"__declspec(dllimport) #endif

EFS_ACCESS_DLLEXT BOOL __stdcall exp_GetEFSDllVersion(CString szDllVersion);

EFS_ACCESS_DLLEXT USHORT __stdcall exp_Set_Efs_Comport_Id(const UINT uiComportId);

EFS_ACCESS_DLLEXT USHORT __stdcall exp_Set_Efs_Phone_Handle(HANDLE uiPhoneHandle);

EFS_ACCESS_DLLEXT USHORT __stdcall exp_Read_Imei(CString szImei);
8 hours ago
先立 走wrote:
多谢阮工。我刚才试了一下,您说的方法可以实现我想要的效果。本来我以为在同一个文件里用ctrl+c和ctrl+v的方法都需要重新指定对应的控件,在文件间肯定更是那样。
9 hours ago
Qizhen Ruanwrote:
先立 走,是这样的,一个属性节点,在A VI上对应某个控件,而B VI 上并没有这个控件,所以拷贝过去必须为它重新指定一个对应的控件。有一个解决方法,你可以同时选中一个控件的接线端和属性节点,把两个节点一起拷贝到另一个VI上去。
20 hours ago
先立 走wrote:
阮工:
    不好意思,这两天没来看,让你久等了。在两个.vi文件之间拷贝属性节点(比如控件的值),默认情况下,拷贝过去后这些属性节点需要指定是哪个控件的。由于属性节点特别多,一个一个去手动指定,毫无效率可言。我想请教,有没有相关设置可以改善这一点?或者其他编程技巧可以避免这种情况?
22 hours ago
Qizhen Ruanwrote:
先立 走, 我不太理解你的问题,需要说的再具体点:文件间是什么意思,使用哪一种属性节点,重新链接是指什么?
2 days ago
先立 走wrote:
向阮工请教:
文件间的属性节点如何复制呢?我用了较多的属性节点,复制过去后需要重新链接,太费时了。
6 days ago
No namewrote:
谢谢阮工~~
Oct. 19
Qizhen Ruanwrote:
我也不能确定乱码发生的原因。有一个可能的原因是,LabVIEW不支持unicode的编码,所以文本编码必须使用mutibyte的编码方式。mutibyte有多种语言设置,如果在转换编码时没有设置好,会出现乱码。
LabVIEW中没有地址的概念,所以也不支持得到某个变量的地址这一用法(这与Java, C#是一样的)。
Oct. 19
No namewrote:
阮工:您好!我目前在LabVIEW里面调用VC编的一个DLL,用的是ActiveX控件,实现将数据进行网络组播,这是作为发送端,然后用编一个UDP进行接收的接收端,但发现得到的都是乱码。不知道出现乱码是因为什么原因呢?
     还有一个问题,在LabVIEW中想取一个变量的内存地址,不知道应该怎么实现呢?
 
Oct. 17
Qizhen Ruanwrote:
提高效率问题要视具体情况而定,不同的程序差别很大。对于一般的情况,属性节点要尽量少用,另外属性节点一般是在UI线程内运行的,可以把包含有属性节点的VI设置为在UI线程下运行,以减少线程切换。
Oct. 13
成宏 徐wrote:
阮工:您好。
我在用属性节点的时候遇到一些效率上的问题,不知道您有没有使用属性节点时应注意的事项和性能问题这方面的资料,希望您能给点建议,谢谢!
Oct. 13
Qizhen Ruanwrote:
CIN 已经被彻底放弃了,所以不会再有任何关于它的新文章了。如果你需要在 C 中实现部分程序,应该把它编译成动态链接库,然后使用 CLN 节点调用。
Sept. 24
彬 邱wrote:
阮大侠:
     CIN作为LabVIEW是非常好的辅助编程工具,但网络上大部分的文章都是基于VC6.0的,而没有讲述VS 2005(或2008)中C++环境的配置和使用特点。请问如何配置VS 2005(或2008),如何使用?
Sept. 24
Qizhen Ruanwrote:
目前的控件已经满足用户普遍需求了。对于客户特殊化的需求,最好是由用户自定义完成。
关于Picture控件,我觉得画点和线已经是最基本的操作了。公司内部的人使用这个控件,也就是调用它提供出来的这几个VI。Picture内部的实现,可能需要调用系统API提供的画图函数,但具体怎么实现的我也不是太了解。使用它的时候,其实也没必要了解它的内部格式。
我从它的机构上猜测,Picture控件实际上记录的是用户的画图过程,它有自己的记录格式。基本格式是flatten后的簇数据。然后再内部调用系统的绘图函数,把图形绘制出来。当然,我没研究过这部分内容,只是自己猜测一下。
Sept. 16
彬 邱wrote:
阮大侠:
     对于labVIEW常用控件库从labVIEW7.0到LabVIEW2009都似乎没什么变化,而通过我的观察,控件库中添加最多的可以说是应用Picture控件自定义Xcontrol的3D控件了,由此趋势也可以发现Picture控件其实是最好用来自定义特殊界面的控件了,虽然labVIEW中开放了诸如:画点,画线等基本函数用来操作Picture控件画图,但还是不如直接深入工具包的内核探究其中如何操作Picture控件的。通过底层的代码我大概了解到Picture的一些特点,但只能管中窥豹,觉得学的很辛苦,请问是否能提供一些资料(Picture中的定义,格式)?
Sept. 13
Qizhen Ruanwrote:
cslc l:估计再过一个月吧。
hobo liang:你要先设置Active Plot。
Aug. 12
hobo liangwrote:
阮老师,我把三个数组同时画在一个波形图上,想用控件控制选择显示其中的某条曲线。属性节点中的plot.name似乎每次返回的都是最后一条曲线的名称,有没有什么好的办法呢?微笑
Aug. 12
cslc lwrote:
阮老师,你好,怎么样了,什么时候能出版发行了,我都等不急了呀
Aug. 11
Qizhen Ruanwrote:
Jie Wang:

我没有使用过MatLab,所以不太好对他俩进行比较。LabVIEW的mathscript遵循的语法与MatLab应当是同一个,所以它俩写出来的程序应该是相同的。
LabVIEW主要还是在工控测试领域中应用,其它行业的工具包的确没有MatLab多。mathscript只是LabVIEW以下部分,我觉得LabVIEW最具特色的还是它的图形化编程方法。
June 29
Jie Wangwrote:
What do you think about LabView when comparing with MatLab? LabView seems a good one for signal processing and measurement, and instrument simulation. LabView uses the same mathscripts from MatLab. MatLab has a huge amount of various toolboxs from engineering, bioinformatics to finance. Personally, I think LabView is still specialized in instruments. It would be a very long way if NI wants it to be generalized.
June 25
Jie Wangwrote:
Hello, come here when googling LabView in Chinese. You make a very good site! I am a professor of Computer Science. However, this Summer I am teaching LabView for Mechanical Engineering students. I have to learn it and teach it at the same time. Sad I hope I will get some help from reading your blog. Thank you.
June 25
Yuan Pengwrote:
阮老师,您好!我在调用visa函数做串口通信时,在没有接外部设备,而只是把电脑上的两个串口连起来,相当与从一个端口发送出去而从另外一个端口接收,怎就通信不了?是不是labview做的串口只针对和PCI-232这些设备通信?
这个我试过 一台PC作为发送端,负责串口的写数据,另一台作为接收端,负责读数据,安装了VISA后用串口函数很容易实现的。
June 14
Qizhen Ruanwrote:
我没试过把两台电脑连在一起,可能串口有服务端和客户端区分的,如果两台电脑相连,需要把一台电脑改为客户端。
June 13
June 13
莉莉 古wrote:
阮老师,您好!我在调用visa函数做串口通信时,在没有接外部设备,而只是把电脑上的两个串口连起来,相当与从一个端口发送出去而从另外一个端口接收,怎就通信不了?是不是labview做的串口只针对和PCI-232这些设备通信?
June 12