You may start a Timer, then invoke a MessageBox and still have the Timer counting behind the MessageBox, which is supposed to be absolutely modal. The Timer and the MessageBox window belong to the same process, though I'm not completely sure if the MessageBox runs in a separate thread.