If you're going to be registering codecs manually why not jsut write inf files for each of them? It removes the need to know a path to the files themselves and enables you to do add them to the add/remove programs list as well. Registration is handled with the DllRegister command and the registry stuff with AddReg, all its quite simple once you learn the basics.
I've got side by side divx 3, 4 and 5 as well as huffyuv and mjpeg codecs working with this method as well as mpc, ape, flac, ogg and shn audio directshow filters and a few little powertoys. All silently installed and fully functional.
it means all you have to do for each new codec is add a single line to the runonceex key or possibly cmdlines.txt, like this
HKLM,"%RunOnceEx%\install_035",,,"Audio Codecs"
HKLM,"%RunOnceEx%\install_035",1,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\audio\ogg\oggdshow.inf"
HKLM,"%RunOnceEx%\install_035",2,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\audio\ape\apedshow.inf"
HKLM,"%RunOnceEx%\install_035",3,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\audio\flac\flacdshow.inf"
HKLM,"%RunOnceEx%\install_035",4,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\audio\mpc\mpcdshow.inf"
HKLM,"%RunOnceEx%\install_035",5,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\audio\shn\shndshow.inf"
HKLM,"%RunOnceEx%\install_035",6,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\audio\ogg\fixogg.inf"
HKLM,"%RunOnceEx%\install_035",6,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\audio\lame\lameacm.inf"
HKLM,"%RunOnceEx%\install_040",,,"Video Codecs"
HKLM,"%RunOnceEx%\install_040",1,,"%24%\Install\Codecs\wmv9VCMsetup.exe /Q"
HKLM,"%RunOnceEx%\install_040",2,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\video\divx3\divx3.inf"
HKLM,"%RunOnceEx%\install_040",3,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\video\divx4\divx4.inf"
HKLM,"%RunOnceEx%\install_040",4,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\video\divx5\divx5.inf"
HKLM,"%RunOnceEx%\install_040",5,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\video\huffyuv\huffyuv.inf"
HKLM,"%RunOnceEx%\install_040",6,,"rundll32.exe setupapi InstallHinfSection DefaultInstall 128 %24%\Install\Codecs\video\mjpeg\mjpeg.inf"