全局脚本项目模式如下
Sub CreateSleepFile(lngMS)
Dim MyFSO, MyFile
Set MyFSO = CreateObject ("s cripting.FileSystemObject")
Set MyFile = MyFSO.CreateTextFile( "D:\MySleep.vbs", True )
MyFile.WriteLine "Ws cript.Sleep " & CLng(lngMS)
MyFile.Close
End Sub
第二步:在画面中添加一个按钮:Button1,设置其Text属性为“Sleep”,在其鼠标单击事件中,选VBS动作,代码如下:
Sub OnClick(Byval Item)
Dim WshShell
Item.Text="Sleep Start..."
Call createsleepfile(5000)
Set WshShell = CreateObject("Ws cript.Shell")
WshShell.Run "D:\MySleep.vbs", ,True
Item.Text="Sleep End"
End Sub
Wincc运行后,在D盘下没生成MySleep.vbs文件,我已经在计算机属性里选择了启动全局脚本,并重启过。网上有人说要在SIMATIC S7 Protocol Suite 下面的驱动连接,单击右键,系统参数,单位,逻辑设备名称-进行选择 打开WINCC 通讯连接。SIMATIC S7 Protocol Suite 下有SOLT PLC / NAMED CONNECTION / MPI/PROFBUS/INDUSTRIAL ETHERNET\ 请问是什么原因?
第二,如果一分钟触发一次,画面VBS如何调用?全局脚本类型应该是标准?项目?还是动作?刚接触不太了解,能否详细说说。麻烦了
问题补充:
项目模式Wscript中没有空格,按程序思路应生成MySleep.vbs文件,可是没有找到。画面按钮点击后也没有。
如果写一个全局脚本代码如下
if 变量1=1
....
end if
是否变量1取按钮状态触发,或中其它值?这样调用?全局脚本类型是动作?项目?还是标准?最好能举例说明,谢谢
最佳答案
测试了下,你的代码没问题可以正确执行,由于网站安全的原因Wscript中间被强制插入了空格,不知道你原来复制的有没有
项目里写的是供动作或其它画面脚本里调用的过程或函数,所以一般全局脚本写在动作里,动作需设置一个触发器以确定何时执行动作,点击工具栏里的触发器按钮即可进行设置,可设置周期性的定时触发或变量触发,如果一分钟触发一次,那么设置一个1分钟的定时器做为触发器就可以了。
提问者对于答案的评价:
虽然不是很详细。。还有有一些启发的
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc263613.html