2012-03-20 1 views
0

Привет всем, я пытаюсь понять, как открыть консольное приложение даже после того, как оно собирает данные и отправляет их. Я конвертирую графический интерфейс в консольное приложение. У этого есть таймер, который срабатывает sub каждые 20 секунд. Но похоже, что он не работает в консольном приложении, так как после того, как он срабатывает, он закрывает приложение, не дожидаясь ожидания.Приложение для консольного приложения VB.net приостанавливается и остается открытым

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 

Что мне нужно сделать для того, чтобы оно действовало как версия графического интерфейса?

Спасибо за ваше время,

Дэвид

+2

напишите console.readkey(), чтобы подождать с console.it должен работать. – DharaPPatel

+0

@DharaPPatel: Спасибо, это сработало! : o) – StealthRT

+0

его удовольствие :) – DharaPPatel

ответ

2

Как DharaPPatel уже писал в своем комментарии, console.readkey() делает консольное приложение ждать нажатия клавиши. Поместите его в конец вашего Sub Main():

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


    Console.ReadKey() 

End Sub 
+0

Awesome. Благодаря! – StealthRT

Смежные вопросы