If I create a WPF or WinForms app, I can launch it by its executable in Debug folder. Why do all programs come 开发者_JAVA技巧with an install wizard and how do I create one for my WPF/ WinForms app?
Programs usually come with an installer because it can put the program in a known location, add things to the start menu, add registry keys, etc.
You can create an installer using NSIS.
installers will be run (most of the time) by administrators. This will allow you to modify protected things of the system during setup such as the file system (Program Files folder), registry and install services and such.
The actual program then will not need these privileges and can be run by non-admins.
Also: Microsoft Logo requirements make the use of Windows Installer (the service that installs MSIs and adds them to your control panel for easy removal) mandatory.
While deploying a windows based application to a client machine we need to take care about several aspects like installation location,Registry values and to ensure that the required version of .Net framework is present in the client machine.Such kinds of things can be automated using an installer.You can create an installer by using the setup and deployment project or using clickonce
Check the below links for more
Setup and Deployment Projects
Deploying a WPF Application (WPF)
Deploying a Standard WPF Application Using ClickOnce and Visual Studio
WPF 3.5 SP1 Deployment
For example, almost any program produced by Visual Studio 2010, if copied to a freshly installed Windows XP system, will fail to run. This is what installers do well that is hard to get right: dependencies.
精彩评论