Der Ansatz ist schon richtig.
Ich würde aber Addin.HaveSecondsElapsed(60) verwenden. (Ausser die aktion soll einmal täglich laufen) -> Dann frag ich mich aber, ob ein Agent nicht besser wäre??
Setze in einer DateTime Variable, wann die Aktion das nächste Mal laufen soll, bei der Initialisierung (oder nach dem ersten Aufruf)
Vergleiche alle 60 Sekunden, ob die Variable in der Vergangenheit ist.
Dann führe die Aktion aus und setze die Variable auf das nächste zukünfitge Datum.
Gruss
Chris