Is there a way to have a program run everytime windows starts after it is ran the first time?

Then each time windows starts it will run and check the date..and if the date isn't what I tell it to be, then it wont execute anymore code...but when the date reaches my desired date, then it will excute the entire program??

I think I would have to a first run variable though, that would check if it was the first time run..and if it was..then just exit....but I'm not exactly sure how I would do this either??

Thanks