LabVIEW-控制第三方软件界面上的控件

2025-11-04 15:45:08

1、HWND WINAPI FindWindowA(  _In_opt_ LPCTSTR lpClassName,  _In_opt_ LPCTSTR lpWindowName)查找窗口句柄;

lpClassName:窗口的类名;

lpWindowName:窗口的标题;

成功函数返回窗口的句柄,失败返回 0;

2、找计算器窗口的句柄(先打开计算器):

1)如果不知道计算器的类型,则lpClassName=nil;h := FindWindow(nil, '计算器');2)如果知道计算器窗口的类名是: CalcFrameh := FindWindow('CalcFrame', nil);

3、打开LabVIEW,新建VI,程序框图-查看(菜单)-函数选板-函数-互连接口-库与可执行程序-调用库函数节点;

LabVIEW-控制第三方软件界面上的控件

4、双击打开调用库函数节点:1)选择库名user32.dll;2)选择函数名FindWindowsA;3)选择在UI线程中运行UI;3)选择Stdcall(WINAPI)调用规范;

LabVIEW-控制第三方软件界面上的控件

5、配置输入输出参数名称,类型,并在前面板创建两个输入控件;

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

6、BOOL WINAPI PostMessage(  _In_opt_ HWND   hWnd,  _In_     UINT   Msg,  _In_     WPARAM wParam,  _In_     LPARAM lParam)向指定窗口句柄发送按键消息;

hWnd: 接收消息的窗口句柄;

Msg:指定发送消息的类型,比如移动鼠标消息,鼠标左键按下消息,快捷键等(具体各种类型的值可以查看MSDN);

wParam: 第一层发送消息的具体信息;

lParam:第二层发送消息的具体信息;

函数调用成功,返回非零,否则函数调用返回值为零;

7、再添加一个调用库函数节点,并配置输入输出参数名称,类型,并在前面板创建两个输入控件;

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

8、将FindWindowA 返回值接线端连接PostMessage的hWnd接线端,并创建lpWindowName,lpClassName,Msg,wParam,lParam,BOOL等控件;

9、当向计算器输入2的情况,我们需要赋值lpWindowName=“计算器”,lpClassName=0,Msg=260,wParam=50,lParam=0;

LabVIEW-控制第三方软件界面上的控件

10、当需要打开计算器的帮助文档情况,我们需要赋值lpWindowName=“计算器”,lpClassName=0,Msg=260,wParam=112,lParam=0;

LabVIEW-控制第三方软件界面上的控件

LabVIEW-控制第三方软件界面上的控件

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢