问题
I have created an application (C#, Windows Forms) on Visual Studio 2008, and now I want to make installer of this application. How can this be done?
I want my installer to
- Copy all the files that my application is using to a user chosen path (copy the files to the chosen, some for the server-side application and some for the client side).
- Also install .NET 3.5
- Check for SQL Server or SQL Server Express Edition
How can I do it?
回答1:
- Add a new install project to your solution.
- Add targets from all projects you want to be installed.
- Configure pre-requirements and choose "Check for .NET 3.5 and SQL Express" option. Choose the location from where missing components must be installed.
- Configure your installer settings - company name, version, copyright, etc.
- Build and go!
回答2:
Generally speaking, it's recommended to use MSI-based installations on Windows. Thus, if you're ready to invest a fair bit of time, WiX is the way to go.
If you want something which is much more simpler, go with InnoSetup.
回答3:
There are several methods, two of which are as follows. Provide a custom installer or a setup project.
Here is how to create a custom installer
[RunInstaller(true)]
public class MyInstaller : Installer
{
public HelloInstaller()
: base()
{
}
public override void Commit(IDictionary mySavedState)
{
base.Commit(mySavedState);
System.IO.File.CreateText("Commit.txt");
}
public override void Install(IDictionary stateSaver)
{
base.Install(stateSaver);
System.IO.File.CreateText("Install.txt");
}
public override void Uninstall(IDictionary savedState)
{
base.Uninstall(savedState);
File.Delete("Commit.txt");
File.Delete("Install.txt");
}
public override void Rollback(IDictionary savedState)
{
base.Rollback(savedState);
File.Delete("Install.txt");
}
}
To add a setup project
Menu file -> New -> Project --> Other Projects Types --> Setup and Deployment
Set properties of the project, using the properties window
The article How to create a Setup package by using Visual Studio .NET provides the details.
回答4:
Why invent wheels yourself while there is a car ready for you? I just find this tools super easy and intuitive to use: Advanced Installer. This one minute video should be enough to impress you. Here is the illustrative user guide.
来源:https://stackoverflow.com/questions/2251062/how-to-make-an-installer-for-my-c-sharp-application