When you installed the program it recorded the cd rom drive letter, so the program would know where to find the cd when it needs it. When you installed the new hard disk, windows reassigned drive letters to give priority to the hard disk. That's normal in Windows - anything that's not a floppy or hard disk gets a new letter.
I know two ways to fix it.
The bad way (I think), some ide devices come with software that checks programs and fixes the drive letter assignment in the windows registry. I've never used one of these, but I can't believe they'd work right.
The good way: 1. uninstall all of your software that requires a cd to run (Start / Settings / Control Panel / Add-Remove Programs). 2. Lock your cd drive letter. From Control Panel / System / Device Manager, click on your cd rom and Properties / Settings, and assign a letter from the end of the alphabet (like X) to your cd rom drive. 3. Reinstall your software from drive X.
Next time you change ide devices, the reserved drive letter for your cd won't change.
There's a slight catch. Some programs that need a cd to run will look for the first cd rom drive letter instead of a specified drive letter. So if you plan to install more than one cd-type device (like cd rw, or dvd) then don't use X on the cd rom, use something before X so you'll have room to assign other cd-type devices after your cd rom drive letter.
Remember to back up any user data before you uninstall the programs.
Speaking of cd drives, recently I tried a software cd drive emulator. You copy entire cd's onto a hard disk, the emulator mimics cd rom and runs the program from the hard disk. This worked much faster than running the cd from a cd drive. (The emulator adds a drive letter to windows, and it has to be the first cd drive listed.)