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

相关推荐

  • 关于WinCC7.0和7.4的界面文件.PDL

    大家好。中控室现场电脑装的是V7.0版的,我自己电脑装的V7.4的。能不能用V7.4版软件修改工程后,放回到现场电脑(V7.0)正常激活使用? 问题补充:7.4里只是简单添加几个显…

    SIMATIC WinCC 2021年7月5日
  • wincc死机重启后会将一些变量置0吗

    比如wincc运行时,我点击一个按钮发送一个变量为1的命令,过一段时间wincc电脑或程序死机,重启后这个变量会被置成0吗 最佳答案 不会,只要已经写进PLC,WINCC死机时PL…

    SIMATIC WinCC 2017年6月9日
  • K-TP178触摸屏,

    各位好,我公司K-TP178触摸屏损坏了,有显示,但触摸无反应,请问如何上载和下载程序,软件哪有下载, 问题补充:我公司买了新屏,我是想把旧屏的程序调上来,下载,但坏屏按不动,能上…

    SIMATIC WinCC 2019年6月11日
  • WINCC层的使用

    这个层怎么使用?我切换了一下感觉没啥变化呢? 问题补充:我又试了一下 ,默认是图层0我是关闭不了的,然后我打开图层1关闭图层0 这时画面是无按钮的,但我在图层1…

    2020年11月1日
  • Wincc7.5打不开项目,报找不到服务器,急!

    wincc7.5 打开Wincc7.2项目,打不开。移植的时候报是最新的,不需要移植。 钻石用户推荐最佳答案 按下列步骤检查,没准你第一步就没完成哦: &nbs…

    SIMATIC WinCC 2021年7月5日
  • 按钮按下输出个3秒的脉冲

    按钮按下输出个3秒的脉冲 在wincc里如何做?是不是要用c脚本,如何用c脚本做,帮忙用实例 最佳答案 void delay(int tm){time…

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

    PLC控制器采用can总线传输,上位机采用工控机,组态用wincc。需要PCI转CAN的卡放到工控机上,实现上位机wincc与下位机控制器CAN传输。wincc与控制器通信使用OP…

    SIMATIC WinCC 2019年6月11日
  • 关于归档备份?

    wincc中在组态过程值中涉及到归档备份,问一下“归档备份”的作用是什么? 问题补充:能提供点相关资料么? 最佳答案 归档备份的作用就是怕原数据损坏用来还原原数据. 提问者对于答案…

    SIMATIC WinCC 2019年6月11日
  • 自定义数据库生成的报表,如何筛选一列的最大值和最小值?

    求详细脚本参照一下,或者详细步骤 ,谢谢啊 最佳答案 select max(字段),min(字段) from 表 where&nb…

    SIMATIC WinCC 2017年7月26日
  • wincc 输入域增加数值

    我用的是wincc 6.0SP1中文版,想通过单击按钮实现在指定输入域内增加固定值0.1的功能,编写了以下C动作,但还是实现不了,请大侠指点! float&nb…

    SIMATIC WinCC 2019年6月11日

发表回复

登录后才能评论