WINCC中调用一个exe程序

在WINCC中可以用ProgramExecute()函数调用激活一个a.exe程序。现在的问题是a.exe在运行状态下可以被再次激活,生成2个或更多的运行窗口,但这是不被希望的。希望在触发脚本时能先判断a.exe的状态,如果未运行则激活,如果已经运行则调用显示,相关的C脚本怎么写,请大家帮忙,谢谢了!

最佳答案

如何在 WinCC 中将其它程序的窗口置于最前面?
说明:
可以通过使用 Windows API 函数 FindWindow找到一个窗口的句柄。 

假设您希望将一个 Microsoft Access 窗口置于最前面: 

HWND Handle= ZERO;
Handle= FindWindow("OMAIN",ZERO);
if(Handle)

ShowWindow(Handle, SW_MINIMIZE);  

ShowWindow ( Handle, SW_SHOWNORMAL );
SetForegroundWindow(Handle); 

else
ProgramExecute("C:\\MSOffice.97\\Office\\ACCESS.EXE"); 

如果没有发现该窗口,随后 Microsoft Access 将重新启动。
参考资料:http://support.automation.siemens.com/CN/view/zh/415808

提问者对于答案的评价:
问题解决了,谢谢两位的热心解答!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc264107.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午2:45
下一篇 2019年6月11日 上午2:45

相关推荐

  • WINCC7.4SP1的问题

    1.WINCC7.4SP1复制过来的项目,在用户管理界面英文显示正常,中文都是乱码,怎么解决?2.wincc7.4SP1变量管理可以用AS符号读取PLC变量,但是无法新建变量,怎么…

    2020年11月1日
  • 如何把内网的数据传到外网而又要保证内网安全?

    目前公司采用一台工控机双网卡,一边连外网一边连内网,然后使用wincc web navigator发布给外网的公司领导看,但这样很不安全,一旦这台工控机中毒内网…

    SIMATIC WinCC 2020年11月1日
  • WinCC_flexible_SMART_V3SP1安装频繁重启怎么解决?

    win7系统下安装频繁重启无法正常安装 钻石用户推荐最佳答案 参考如下操作开始>运行,输入REGEDIT,然后按ENTER键打开注册表编辑器,在注册表内“HKEY_LOCAL…

    SIMATIC WinCC 2021年7月5日
  • wincc报警系统显示进度条不显示就绪,每次启动运行系统显示找不到指定文件

    wincc报警系统显示进度条不显示就绪,每次启动运行系统显示找不到指定文件,每次退出组态系统秒关,但是不能再次打开,需要reset_wincc,请大神解答 图片说明:  …

    2021年7月5日
  • 通过按钮切换不同的在线趋势控件

    一个画面中,有N个按钮,有N个在线趋势控件,这N个在线趋势控件是重合的。当我按一个按钮时,比如按“温度曲线”按钮,就显示温度在线趋势控件,其他的控件隐藏;当我按“水分曲线”按钮时,…

    SIMATIC WinCC 2019年6月11日
  • wincc帮助问题

    按F1后出现帮助,但是点击帮助里面的内容,而且不能打开目录和索引项。这是为什么呢?谢谢 问题补充:并且,在使用工具栏的“?”帮助按钮时,先点这个按钮,可以打开一个帮助对话框,而要想…

    SIMATIC WinCC 2019年6月11日
  • WINCC全局脚本

    我把5.1版本的项目移植到6.2版本中,原来在5.1中的全局脚本在6.2里看不到是怎么回事。 问题补充:有没有方法修改 最佳答案 5.1里的全局动作、项目函数可以直接拷贝到6.2项…

    SIMATIC WinCC 2019年6月11日
  • wincc的项目打开问题

    我从别人那考了一个WINCC例子看   可是为什么一打开就是显示“组态服务器不可用,是否打开项目,将本地计算机作为服务器” 我点了启动本地服…

    SIMATIC WinCC 2019年6月11日
  • wincc的OPC通信

    请问网络设置怎么弄啊?我把DCOM的验证都弄到最低了,安全里面允许访问设置了administrators.everone.interactive.网络是交互式.计算机管理>本地用户…

    SIMATIC WinCC 2019年6月11日
  • WINCC 小数位显示

    我用线性标定,把无符号16位数缩小100倍,可是显示的数字小数点后都是0,如果我想显示小数点后的数字,怎么办? 最佳答案 请参考: 在WinCC中以保留小数点后位置的形式…

    SIMATIC WinCC 2019年6月11日