理解できないような奇妙な問題があります。3 秒ごとに実行されるタイマーがあり、保留中のスケジュールがあるか、スケジュールがないか、現在実行中のスケジュールがあるかによって、ボタンの色がそれぞれ黄色、黒、または緑に変わります。
デバッグ モードに入ってスケジュールを追加したり、実行したりすると、コンピューターで正常に動作し、本来の色に変わります。このプログラムを仮想マシンに置き、同じデータ パラメータで同じスケジュールを作成しましたが、ボタンの色が変わりません。両方のマシンに .net 4.0 がインストールされています。
Public Sub createTimer()
buttonTimer = New Timer()
buttonTimer.Start()
buttonTimer.Interval = 3000
AddHandler buttonTimer.Tick, AddressOf buttonTimer_Tick
createTimer() は、ページが読み込まれるときに runonce 関数から呼び出されます。
Public Sub buttonTimer_Tick(sender As Object, e As EventArgs)
If Scheduler.AutomationRunning = True Then
btnAutoStartMenu.ForeColor = Color.Green
ElseIf Scheduler.AutomationRunning = False And Automation.ScheduleList.Count > 0 Then
btnAutoStartMenu.ForeColor = Color.Yellow
ElseIf Scheduler.AutomationRunning = False And Automation.ScheduleList.Count = 0 Then
btnAutoStartMenu.ForeColor = Color.Black
End If
インストーラーに含まれていないdllである可能性があるのではないかと思っていますか? しかし、色の変更は .net フレームワークに簡単に組み込まれているように見えるので、両方で 4.0 を使用することで、それを正しく処理する必要があります。
編集: また、別の仮想マシン インスタンスで試してみましたが、同じ問題が残ります。