I realize that I didn't explain myself very well before, so maybe I should do that... This all probably makes more sense in a separate thread, but why stop now. If Jim feels like sorting it out, then go for it.
Why I Don't Use MC18.exe To Program My Remote:
I've found it to be slower than calling the Windows Messages directly. The difference isn't astounding, but it is perceptible. The difference comes down to the fact that the MC18.exe launcher is really just a wrapper for the existing Windows Messages system.
To use the launcher applet, Windows has to essentially do the following:
1. Girder calls MC18.exe /MCC something on the command line.
2. A new process is spawned and MC18.exe has to load. Even though this process is tiny, there is still latency any time you have to spawn any new process.
3. MC18.exe calls the Windows Message (or does it internally, it doesn't matter) to direct the running Media Center 18.exe application to perform the requested command.
On the other hand, if I call the Windows Messages directly and target them at the running executable, you get to skip step #2 and they just execute. MC responds instantly as soon as it "gets" the Windows message. Since my remote control "application" is always loaded and running, no new application has to launch (except when I'm actually launching MC itself, for which I do use the MC18.exe applet).
The difference in practice feels much like the difference between pre-4.1 Android and iOS performance (Jelly Bean is much better on the Nexus 7, though it is still pretty bad on the ASUS Transformer Prime).
Using MC18.exe, it feels like: Push Button - Pause - Execute
Using Windows Messages, it feels like: Push Button - Execute
The pause is very small. Less than a second on my HTPC, but it is there. When you are hitting a button that cycles the display (like the Green Button command), you can very easily "get ahead" of the application with your button presses when you are using the remote, because it has to spawn a new MC18.exe and shut it down for each press of the button. When you use Windows Messages, it leaps at your commands like it "should" (like an appliance).
So, as you can see, symlinking MC18.exe to MC.exe wouldn't work, since I don't use the launcher very much. And you can't symlink Media Center 18.exe to Media Center.exe because the Windows Messages are looking at the names of actual, running processes on the system, not actually calling the executable itself. If you did the symlink, the running process would still be "called" its actual name, it would just be a shortcut to load it, which wouldn't help.
What Would Help For The Future:
Two things, one decidedly more important than the other...
1. Can you guys name the real Media Center executable Media Center.exe instead of Media Center 18.exe? This will solve 95% of my problems, because then the GML file for all of those Windows Messages wouldn't need to change. There wouldn't be a conflict because they'd still be running from different directories. Since I'm targeting a RUNNING application, it doesn't matter that they are in different directories (the directory path isn't in the GML, just the application name).
Of course, if you were trying to run MC17 and MC18 simultaneously and trying to target Windows Messages to one or the other but not both, then you'd have to be more prudent with your targeting, but that is an even more crazy edge-case than me.
2. Include an option in the "Custom Install" process that does essentially the symlink MrC suggested for you. Obviously I can do this myself, so this isn't a big deal, but I think it would be nice.