When building the setup medium the function makes an register of the DLL and writes this informationinto the registry of the build machine. So far so bad. But You get really into trouble if You build subsequent mediums with the same DLL (same name) in different versions. If the TypeLibs or ClassIDs change from version to version then all this entries are entered additional into the registry and all values are written into Your setup medium (even the wrong ones). This gives no error message at build time, but You are unable to install this medium.
This means, You cannot use this function, as InstallsShield announced it, if You have changing DLLs due to current development of the software.
I have submitted this as bug to InstallShield but their answer was "This is by design". Great design !
So if You want to make correct builds, You have to clean the registry after every build when You need to make subsequent builds with DLLs in different versions. I use the tool EasyClean.