I have developed a desktop application, which needs to install some DLL in client's GAC, so I distributed it to my clients as a MSI installer.
However, every time i publish a new version, the client has to download it manually and reinstall it. I was wondering if there is not a better way to distribute it.
Something like ClickOnce. On a ClickOnce distribution, when the users opens the app, it automatically detects that I have published a new version, downloading and installing it before opening the app.
However in a ClickOnce distribution I cannot install dll in client's GAC, so i cannot use it. Is there any way to distribute my app with these 2 requisites?
Despite MSI being superior to ClickOnce in almost every way, auto updating pattern is the killer feature that MSI was never given a native solution for. You have to implement this infrastructure yourself or leverage one from a vendor such as InstallShield or others. You need a number of pieces such as a webservice to serve up the updates, a windows service to download and elevate the packages and a client side to quit the app, perform the install and restart the app.