2014-02-24 42 views
-5

我試着如果程序是用C銳利和創建一個Windows窗體程序已在運行時,在設定的時間調用方法?

我開始了使用timer設置爲1運行

林找到一些代碼,將在13:00小時運行的方法分鐘,當timer_tick我嘗試過的if statement嘗試

if (TimeDate.Now == new DateTime(0001, 01, 01, 08, 00)) 

乾杯

+0

究竟是什麼問題在這裏?你有沒有試過*任何*? – Crono

+2

「試圖找到一些代碼」 - 只是寫它!這是關於代碼的很酷的事情,你可以寫你自己的:) –

+0

我開始使用一個計時器設置爲1分鐘,當timer_tick我試着if語句嘗試(TimeDate.Now == new DateTime(0001, 01,01,08,00) –

回答

0

使用System.Threading.Timers.Timer對象;

運行計時器,開始所需時間的下一個實例,此後每24個實例。

// TimerCallback object that wraps your method to call when timer elapses 
// (see end of answer) 
var tc = new TimerCallback(DoStuffAt1300Hours); 

// Tomorrow 2/25/14 at 1pm 
var dt = new DateTime(2014, 2, 25, 13, 0, 0); 

// dt - DateTime.Now = start timer in whatever time is between now and tomorrow at 1pm 
// This is a delay, so effectively, the timer will start tomorrow at 1pm 
// And it will run every 24 hours, calling the method DoStuffAt1300Hours() 
var timer = new Timer(tc, null, dt - DateTime.Now, TimeSpan.FromHours(24)); 

創建一個將執行你想要的回調;

public static void DoStuffAt1300Hours(object o) 
{ 
    Console.WriteLine("Hey it's 1pm!"); 
} 
+0

作品一種款待Thansk –

+0

很高興幫助:) –

相關問題