VB.net控制台应用程序暂停并保持打开状态

时间:2012-03-20 09:18:39

标签: vb.net timer console-application

嘿所有我试图了解如何保持我的控制台应用程序打开,即使它收集数据并将其发送出去。我正在将GUI转换为控制台应用程序。它有一个定时器,每隔20秒发射一次子。但它看起来似乎不适用于控制台应用程序,因为它触发了它后它关闭应用程序而无需等待。

Dim secTimer As New System.Timers.Timer(20000)

Sub Main()
    Call copyRTDtoWS()
    AddHandler secTimer.Elapsed, AddressOf TimerDone
    secTimer.Enabled = True
End Sub

Public Sub copyRTDtoWS()
    Dim connectionString As String = GetConnectionString()
    Dim dataReader As SqlDataReader = Nothing
    etc etc...
    Call resetTimer()
End Sub

Private Sub resetTimer()
    secTimer.Stop()
    secTimer.Start()
End Sub

Public Sub TimerDone(ByVal sender As Object, ByVal e As System.Timers.ElapsedEventArgs)
    secTimer.Stop()
    Call copyRTDtoWS()
End Sub

为了让它像GUI版本一样,我需要做些什么呢?

感谢您的时间,

大卫

1 个答案:

答案 0 :(得分:2)

正如DharaPPatel已在他的评论中写道,console.readkey()使控制台应用程序等待击键。把它放在Sub Main()的末尾:

Sub Main()
    Call copyRTDtoWS()
    AddHandler secTimer.Elapsed, AddressOf TimerDone
    secTimer.Enabled = True


    Console.ReadKey()

End Sub