问题引出
在网络通讯编程中,经常需要获取当前主机的名称、IP地址等信息,在LabVIEW中如何获取这些信息呢?
下面以本机为例进行说明,先看一下本机的信息。在Windows系统中打开控制台程序,输入“ipconfig/all”指令,得到本机的网络配置信息如下图所示:
从上图中可以看出,本机计算机名称为“USER-20171101BG”,IP地址为“192.168.1.109”。
下面看下在LabVIEW中如何编程实现获取这些信息。
代码实现过程
在LabVIEW中获取计算机名称、IP地址等信息,主要用到了以下两个函数:“字符串至IP地址转换”和“IP地址至字符串转换”。其中,“字符串至IP地址转换”函数参数说明如下图所示:
“IP地址至字符串转换”函数参数说明如下图所示:
使用这两个函数编写框图程序及运行结果如下图所示:
在程序框图中,先使用“字符串至IP地址转换”函数得到当前计算机的IP地址,注意,此处输入的参数“名称”为空字符串,表明获取的是当前计算机的IP地址。然后调用“IP地址至字符串转换”函数将其转换为计算机名称和句点表示的IP地址,这儿参数“句点符号?”当取值为假时,得到的是计算机名称,当取值为真时,得到的是句点表示的IP地址。
从上图运行结果可看出,正确得到了计算机的名称,对于IP地址,其本质上为U32类型的整数,此处值为3232235885,其句点表示的值正是本机的IP地址“192.168.1.109”。
总结
这儿演示了在LabVIEW中如何获取当前计算机的名称及IP地址的编程方法。
另外,需要说明的是,IP地址本质上为32位的无符号整形数,上面调用了“IP地址至字符串转换”函数将其转换为句点表示的IP地址字符串,这儿也可以自己编程实现转换,32位的IP地址对应4个字节,每个字节代表了句点表示中的一个数字,因此,只需将32位的IP地址拆分为4个字节即可,参考代码如下:
这种方法也能正确得到值1-值4的值分别为192、168、1、109。
本文由编码那些事原创,请关注+转发+收藏+点赞吧,带你一起长知识!