Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
350 views
in Technique[技术] by (71.8m points)

windows installer - What is the best practice to auto upgrade MSI based application?

I am trying to find a standard Microsoft updater service which will update the application/services on customer machine automatically.

Does any auto updater service like this exist?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

UPDATE: Deployment Technolgies & Windows Installer Benefits (just a cross-reference).


ClickOnce: I am not aware of any standard Microsoft features to auto-update MSI installations. The alternative (and pretty much obsolete) deployment technology ClickOnce had some auto-update functionality. I never used this technology for much of anything. I think PhilDW has used it though.

MSI SDK: Not auto-update as such, but the MSI SDK contains a default setup.exe wrapper and an example for A URL-Based Windows Installer Installation. Essentially a way to invoke installation from an URL. I tried it about 17 years ago and abandoned it.

App-V: if you are in a corporate environment I suppose App-V application streaming is an option - centralized installation and management of deployed applications.

MSIX: a quick mention of MSIX - a new deployment technology from Microsoft based upon the previous AppX format (not AppV - plenty to be confused about). Maybe check Bogdan Mitrache's summary description of MSIX. Auto-update features available for MSIX are unclear to me (UPDATE: see Bogdan's answer). Added another link below to a comprehensive guide:

Update: MSIX Tutorial: A comprehensive 24-chapter guide (also written by Bogdan Mitrache).

Third Party Deployment Tools: Commercial deployment tools such as Advanced Installer and (I think) Installshield have features to support MSI auto-update built into their tools (semi-automatic updates). I am not up to speed on the exact technical and conceptual details and limitations since I haven't use the features. I think Advanced Installer lets you point to your own site, but I am not sure what Installshield does. Quick, general ad-hoc overview of major MSI tools.

Roll Your Own?: I implemented an update check functionality in a product once by having the application send the currently installed MSI file's product code to a very simple database on the company's web site. The database had information as to what would be the latest version to upgrade to, and offered it as a direct download link in the browser. You can make your application do this checking directly, but we preferred the browser to work around any firewalls and proxy issues by making it a standard web page lookup (product GUID embedded in the URL). This check was invokable from the help menu in the product. Note: if you make such a feature, make sure to disable it for non-admin users AND ideally make it possible to disable by group policy - or just a registry flag in HKLM.


Some Links:


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...