如何让VB启动运行大概十秒后,再启动另外一个.EXE程序。

是用于组态王软件和VB通讯的。通讯要求先启动VB,然后运行组态王。所以,我这里想加入个延时功能。谢谢!... 是用于组态王软件和VB通讯的。通讯要求先启动VB,然后运行组态王。
所以,我这里想加入个延时功能。
谢谢!
展开
 我来答
北京万博汇
2014-04-21 · 超过26用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:48.5万
展开全部

用sleep或者timer

首先讲讲sleep,这是系统api函数,要用之前需要先声明一下

Private Declare Sub Sleep Lib "Kernel32" (ByVal dwMilliseconds As Long)

然后在需要延时的地方加入sleep(1000),参数1000是指1000毫秒,就是1秒


timer控件

Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 10000
End Sub

Private Sub Timer1_Timer()
Shell "d:\123.exe"   '双引号里是软件的地址
End Sub


对比下,sleep在执行时软件会出现假死的情况,就是win7的(未响应),直到sleep结束,而timer就没有这个问题

ZHMINGEN
2014-04-21 · TA获得超过1735个赞
知道大有可为答主
回答量:3149
采纳率:68%
帮助的人:1226万
展开全部
Dim X As Integer

Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 1000
End Sub

Private Sub Timer1_Timer()
X = X + 1  ' 这里计时,隔1秒,X增加1
Dim FS As Object, FL As String
Set FS = CreateObject("Scripting.FileSystemObject")
FL = "路径+文件名.exe"                 '这里填写“组态王软件”的详细路径以及名称和扩展名
If X >= 10 Then                        '如果够10秒
    If FS.FileExists(FL) = True Then   '判断需要打开的软件是否存在
        Shell "路径+文件名.exe", 1     '如果存在打开软件
    Else
        MsgBox "没有找到这个文件!", vbOKOnly, "无打开的文件!"   '如果不存在,提示
    End If
    Timer1.Enabled = False             '关闭计时器
End If
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友85f366cb43
2014-04-20 · TA获得超过781个赞
知道小有建树答主
回答量:920
采纳率:61%
帮助的人:451万
展开全部
DoEvents
sleep(10*1000)‘等待10秒
Dim RetVal
RetVal = Shell("C:\WINDOWS\CALC.EXE", 1) ' 启动计算器
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chinaboyzyq
2014-04-20 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:3155万
展开全部
定时器里调用shell细节自己去百度。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式