1

We are moving our software project from the practically auto-creating Visual Studio Installer in Visual Studio 2010 to a WiX installer. I'd like to use this change to make sure things are right.

The application is a subsidiary to our company's main app that will already be installed in its own folder. The main app has a lot of dlls, some of which the subsidiary app needs to load to work.

With the previous installer, the required dlls are pulled into the project and included in the subsidiary app's installation folder. However, this seems to create possible problems:

  • Multiple versions of the same dll creates confusion, especially if we produce another app in the future.
  • If the version of the main app changes, the updates are missed by the subsidiary app.

I'm not comfortable with adding our app to the same folder, because they are developed and maintained by different groups.

Instead of this, perhaps I could add the path of the main app to the PATH environment variable. Would this work, and are there concerns with doing this?

Is there some other way to approach this issue?

2

You are probably better off having the DLL's in their own respective directories. This way if one group changes one of them in a way that conflicts with an application from another group, it wont impact that application. I wouldnt worry about having duplicate DLL's - in the scheme of things its probably not much disk space.

Another approach to consider may be to have a shared 'common' directory thats used by all the groups in your company. A path such as "c:\program files\common files\CompanyName". (if you look, you'll likely see you have a 'common files' path in your 'program files' directory already, as many larger vendors do this). Of course, if you do that, you need to commit to testing every DLL change against all apps that might use that DLL.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.