I am making an installation program. The set up project I made automatically detected dependancies. Dependencies were one ocx file I am using and some *.msm files. I haven't yet tested the installation program in the target machine.

My problem is that I have no control over the location of dlls installed in the target machine. Those *.msm files, I think
will be installed in the system32 (or wowsystem64?) folder. Do my msi installation program check the version of the dlls
already available in the target machine before overwritting them?

Another way will be to find out the dependencies with "dependency walker" and manually add those dlls to the
application folder of my installation program. But this way will be really dificult one.

You have any suggestion? Please help me.