Not sure of a repair program would help too much. not all will know what programs are installed. It sounds like there are parts in the registry looking for dlls that no longer exist on the system. Have you uninstalled anything recently? or has your anti-virus or ad-ware removed anything?
If you have XP have you tried to restore the system?