wincc中用VBS判断数据库是否连上,程序没反应

Dim sPro,sDsn,sSer,sCon,sSql,sSql1,oRs,conn,oCom,oItem,n,s,i,oList
sPro="Provider=SQLOLEDB.1;"'Integrated Security=SSPI;Persist Security Info=False;"
sDsn="Initial Catalog=MMTEST;"
sSer="Data Source=192.168.0.100; uid=123; pwd=123456;"
sCon= sPro+sDsn+sSer
Set conn = CreateObject("ADODB.Connection")
conn.ConnectionString = sCon
'conn.CursorLocation = 3
conn.Open

If conn.State <> 1 Then

MsgBox("")
conn.Close
Set conn=Nothing
Else 
MsgBox("打开数据库")
conn.Close
Set conn=Nothing
End If
WINCC中按钮程序如上,按下之后,如果数据库能连上,可以正常运行,如果数据库连不上,程序没有反应,请高手指点,谢谢!!!

问题补充:
我的主要目的是,如果数据库连不上,如何判断?以上并程序不能判断数据库未连接,只能判断数据库已连接!

最佳答案

问题出在conn.Open这句。
如果连接连上了,这句没问题,程序往下执行;
如果连不上,执行这句后程序就出错了,不往下执行了。
所以解决的方法就是加上一条错误处理程序语句:
On Error Resume Next
功能:当一个运行时错误发生时,程序转到紧接着发生错误的语句之后的语句,并在此继续运行。
将这句放在代码的前面(Dim语句之后)。

提问者对于答案的评价:
方法可行,但是要反应好长时间才能弹出连不上数据库的msgbox

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午12:45
下一篇 2021年7月5日 下午12:45

相关推荐

  • VBS脚本,如何去掉前缀?

    VBS脚本中,在有前缀的环境中,如何对个别变量去掉前缀。多谢!类似C脚本中的“@NOTP::” 最佳答案 vbs也是一样的:“@NOTP”取消变量前缀。“@NOSP”取消服务器前缀…

    SIMATIC WinCC 2021年7月5日
  • WinCC冗余服务器用户创建

    马上要做一个项目,需要冗余服务器。网上的“如何构建一个WinCC冗余项目”也看过了,就是不明白图片中的方法,具体是怎么创建的,希望能给我解答一下,最好是有具体的图文创建方法,谢谢!…

    SIMATIC WinCC 2021年7月5日
  • wincc安装,SQL2000

    我安装SQL2000时提示string variable is not large for string ch…

    SIMATIC WinCC 2019年6月11日
  • 上位软件

    Wincc怎么做语音报警,请大家帮忙!谢谢! 最佳答案 参见:wincc语音报警怎么用c脚本实现http://www.ad.siemens.com.cn/service/answe…

    SIMATIC WinCC 2017年11月29日
  • wincc复选框,比方说我选中了其中三个框,我要把这个状态读出来赋值给i,这个C脚本怎么写?

    wincc复选框,比方说我选中了其中三个框,我要把这个状态读出来赋值给i,这个C脚本怎么写? 最佳答案 直接在复选框的变量值属性中连接 “i 变量”即可。 提问…

    SIMATIC WinCC 2018年12月14日
  • wincc使用报警器报警,没有声音

    问题描述:1、版本是wincc7.32、在报警记录里面定义开关量,类型是错误3、在报警器里面定义了报警声音关联的变量error,关联了声音文件,格式是WAV的。4、启动项里面加了报…

    SIMATIC WinCC 2021年7月5日
  • WINCC全局脚本

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

    SIMATIC WinCC 2019年6月11日
  • 配方视图和配方变量是什么意思啊?我总是搞不明白?

    配方视图和配方变量是什么意思啊?我总是搞不明白?难道配方视图里面的变量值不就是配方变量吗,请指教,要不然看不懂配方 变量的文档 最佳答案 参考视频学习中心的教学视频。配方…

    SIMATIC WinCC 2017年11月16日
  • 触摸屏画面中文本域

    我编译触摸屏时出现了一些警告,想知道怎么处理,请看图片、。每个画面中配置的文本域或者io域能看到有多少吗? 问题补充:我想问可以有方法大量修改吗,一个一个的弄很麻烦。 图片说明: …

    2021年7月5日
  • MP270B面板可以通过以太网与PC连接吗

    各位大侠,我想问问MP270B要怎样设置才可以同笔记本电脑通过以太网接口连接? 我现在通过交叉线直连,自设了IP,双方都可ping对方的IP了,可就是不能ProSave进…

    SIMATIC WinCC 2019年6月11日

发表回复

登录后才能评论