OpenDCL > Deployment

Creating an Installer with Inno Setup tutorial now online

<< < (3/7) > >>

This was very helpful, and seems to work just fine (so far I have tested with Studio uninstalled so I could see that it worked). I have a few concerns though.

UninstallRun. Let's say I am installing Runtime. with my app, and someone has already done so with their app. If my app gets uninstalled, what happens - does the Runtime that was already installed get removed? Or is this method somehow smart enough to know that it did not get installed with my app and leave it?

Also, what if that other app that installed the runtime before me gets uninstalled - will that remove the runtime leaving my app without it?

What if the user is running R2010 with some other app that has installed the Runtime.5 - does that app now load the Runtime.6 that I installed, with no problem? Or what?

These are questions that have made me shy away from using OpenDCL until I had a real need. Now that I'm into it, I love it. But I'd feel better about going live with it until I know the answers.

Fred Tomke:

Unfortunately, I cannot help you very much because I have no experiences with the installer. As far as I remember another topic with such a question a counter shall be work in the background which tells the uninstaller if any other application is still using this component (OpenDCL in this case). As far as I remember the Runtime.msi won't install if any newer release is already installed, but a newer release will uninstall the existing and install the newer files after that. There is no way for side-by-side installation.

I'm sure that others can tell you more about it. We are distributing the runtime files with our program files and we're not using the msi. We are loading OpenDCL by the application which is wrapping  and controlling AutoCAD as an external application.


As long as everyone follows the rules and installs the runtime via the standard .msm or .msi, everything will work correctly for every OpenDCL based application. Windows Installer keeps a reference count and will not remove the files until the last relying application is uninstalled. As long as your application requires the runtime, it will remain installed.

Unfortunately some application developers do not follow the rules, so there is a risk of your app getting clobbered. A reinstall should fix the problem in that case.

Fred Tomke:

I recommend you to check up the existing OpenDCL runtime when your application is loading at AutoCAD startup. Since the installed runtime can be manually uninstalled in Windows control panel > software, it is worth to check if OpenDCL runtime is still installed and if it is the release your application needs. If not, throw an alert with the hint of reinstall.

Regards, Fred

Fred, just to clarify, I think that if an application installs the runtime via the app's own MSI (i.e. by using the OpenDCL Runtime MSM merge module instead of the standalone OpenDCL Runtime MSI), there will be no separate entry in Control Panel.


[0] Message Index

[#] Next page

[*] Previous page

Go to full version