








 )
 )




Rainbow писал(а):<из запроса получили, что nDay = 1>

Novichok$ писал(а):Если бы в таблице стояли просто число и время, тогда понятно, по средствам SQL запроса выбираю ближайшую дату и вперед


Rainbow писал(а):Господа, а можно вопрос?
Кто на разлогиненном компе будет в час ночи запускать бережно написанный exe с таймером?
По-моему, тут пахнет сервисом.
В принципе, в .NET есть классы, чтобы написать такой сервис. Правда, как это делается - я не знаю (пока)




SevverIndex | Тип | Start Date                    | День Недели | День Месяца
1      1   25.02.05 02:00AM       NULL               NULL
1      4   26.02.05 02:00AM   NULL      NULL
2      2   26.02.05 02:00AM   NULL      25
2      3   26.02.05 02:00AM   1      NULL
2      3   26.02.05 02:00AM   4      NULL
3      5   26.02.05 02:00AM   NULL      NULL
4      6   26.02.05 02:00AM   NULL      NULL
Novichok$ писал(а):Класс твой по ссылке я сейчас "мучаю" (или он меня : )) )

If MessageBox.Show("Continue running?", "Count is: " & alarmCounter, _
                            MessageBoxButtons.YesNo) = DialogResult.Yes 

Rainbow писал(а):Спасибо, Макс за идею. Но, мне кажется, что вычисление даты следующего сеанса – это лишняя информационная нагрузка на базу, избыточные сведения. Ведь и по имеющимся данным можно вычислить, надо сейчас запускать или нет... К тому же, поскольку программа работает постоянно, то, если очень хочется, дату и время следующего сеанса можно вычислять и хранить в программе. Базе эти сведения ни к чему.
 
 ))
))

kroskros писал(а):то наверно есть все-таки смысл "нагрузить" БД, зато снизить нагрузку на процессор, ведь каждый раз прийдется делать вычисления, а запись не одна...
kroskros писал(а):Резидентная прога будет висеть постоянно, отъедая ресурсы...
а оно надо?



Private Shared Timer1 As New System.Windows.Forms.Timer
    Private Shared exitFlag As Boolean = False
    Public Shared Sub TimerEventProcessor(ByVal myObject As Object, _
    ByVal myEventArgs As EventArgs)
        Timer1.Stop()
        Dim dMin As String
        dMin = "33"
        If Date.Now.Minute = dTag Then
            MessageBox.Show(Date.Now.Minute)
            Timer1.Enabled = True
        Else
            exitFlag = True
        End If
    End Sub
    Public Shared Sub Main()
        
        AddHandler Timer1.Tick, AddressOf TimerEventProcessor
        Timer1.Interval = 5000
        Timer1.Start()
        While exitFlag = False
            Application.DoEvents()
        End While
    End Sub
End Class

dMin = "33"
        If Date.Now.Minute = dTag Then
Как только минута истекает таймер выпрыгивает из цикла.
 
        While True 'exitFlag = False
            Application.DoEvents()
        End WhileСейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11