In an alarm-clock like application, what is the best way to query the time? Right now I'm using a Timer that fires every 60 seconds, checks the time, and if it's the set time, play a .wav of the user's choice. The drawback is the clock can change, and up to 59 seconds could go by before the sound is played. Now, I could have the timer fire every second, and if it's the right time, play the sound and keep track of that for a minute. It seems to me it would be better to keep the amount of times the timer fires to a minimum, as most of the time the program is not going to need to do anything. Is there a better way I can sync with the time, perhaps with an API call or something?

Josh