Trying to make a program for my fiancee's birthday.

Hello, I came up with a wonderful and funny idea for a joke program for my fiancee's birthday. Now I only know basic C++ programming...Like I mean BASIC C++ programming, like "I can only program a message box" basic. But I really want to code this program, it's basic but interesting.

Simply put I only want the program to run on the date of her birthday. Display a message box (I already know how to code that) and...Here's the joke part. Make any and all excecutables run my program to display the message box. Simple, right? Well I'm not sure how to make the program run on a certain date. (I'm sure that's easily found out by reading online.) And how to program it to make all the other .exes run it (of course restarting your PC or having the date set to any day that's not my fiancee's birthday would cancel out that effect of the program)

Anyway, any help is appreciated.

I know I should program it myself, but I only have 2 ideas for programs, this and another program I'm not willing to discuss here. And it seems rather redundant to go out and learn how to fully program in C++ for such a simple program.
I know your intention is good but what if your program is not a simple message box but do other things? Imagine any and all executables will call your program to do something that is not simple message box. This is pretty dangerous IMO. I think your so called "joke part" is the killer part.

Long long time ago back in assembly days, virus play around with COM header to inject their code on valid program executables thereby increasing their size by a few bytes. Then an innocent user click on that executable will run the injected code FIRST before running the normal program.

The pattern is too similar for me to ignore. Despite COM now retired, the idea of making any and all valid programs call one's program can be dangerous.
Yes, the thing is. I want that section to be able to be canceled out by either:

A. Restarting the computer, by restarting the computer it is essentially killing off that effect, therefore all programs would return to normal.

B. Having the date change ahead one day, once the day hits the next date all programs would return to normal.

I don't want it to "Infect" files like a virus, just redirect them to my program for a day or until a restart is done.

If it's still too dangerous then I will strike that part out of my program.
Last edited on
A non-intrusive way would be to check the list of running processes once or twice a second and display the messagebox when there's at least one new process compared to the last time. Maybe add an additional cooldown of a few seconds to avoid showing multiple messages when starting a program that starts several processes.
Alternatively, you can only consider processes that have a window to avoid showing the message for daemons and other processes that aren't visible (in that case, the process listing would be done via EnumWindows, OpenProcess, EnumProcessModules and GetModuleFileNameEx).
Topic archived. No new replies allowed.