请教:Wincc如何检测第三方应用程序的运行状态
Wincc外挂一个VB 的程序,想实现Wincc实时检测VB外挂程序的运行状态,比如,VB程序停止运行时,Wincc提示一些文字,请问高手如何实现,最后能说的详细点,谢谢
最佳答案
VB程序是你字节编写的吗?
如果是,在WinCC里定义一个内部变量,VB程序定时改变这个变量的状态,WinCC里检测这个变量的状态,如果一定时间变量的状态不发生改变,则认为VB程序停止运行,这种方法俗称“心跳位”,在VB程序里可以这样访问WinCC变量
Dim HMI As Object
Set HMI=CreateObject("CCHMIRuntime.HMIRuntime") '创建WinCC运行时对象
HMI.Tags("变量名").Write 0 '设置变量值为0
如果是别人写的,可以在C脚本里使用API函数FindWindow查找VB程序的窗口句柄,如果找不到则认为VB程序停止运行
提问者对于答案的评价:
谢谢,通过C语言方法基本实现!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc265264.html