¿Cómo hacer un instalador para mi aplicación C#?


He creado una aplicación ( C#, Windows Forms ) en Visual Studio 2008 , y ahora quiero hacer instalador de esta aplicación. ¿Cómo se puede hacer esto?

Quiero que mi instalador

  • Copiar todos los archivos que mi aplicación está utilizando a un usuario ruta elegida (copiar los archivos a el elegido, algunos para la aplicación del lado del servidor y algunos para el lado del cliente).
  • También instale . NET 3.5
  • Compruebe si SQL Server o SQL Server Express Edition

¿Cómo puedo hacerlo?

Author: Peter Mortensen, 2010-02-12

4 answers

  1. Agregue un nuevo proyecto de instalación a su solución.
  2. Agregue destinos de todos los proyectos que desea instalar.
  3. Configure los requisitos previos y elija la opción "Verificar.NET 3.5 y SQL Express". Elija la ubicación desde la que deben instalarse los componentes que faltan.
  4. Configure los ajustes del instalador: nombre de la empresa, versión, derechos de autor, etc.
  5. Construir y listo!
 62
Author: sashaeve,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-02-22 19:15:33

En términos generales, se recomienda utilizar instalaciones basadas en MSI en Windows. Por lo tanto, si usted está listo para invertir un poco de tiempo, WiX es el camino a seguir.

Si quieres algo mucho más simple, ve con InnoSetup.

 14
Author: Anton Gogolev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-02-12 10:28:46

Hay varios métodos, dos de los cuales son los siguientes. Proporcione un instalador personalizado o un proyecto de instalación.

Aquí está cómo crear un instalador personalizado

[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");
    }
}

Para agregar un proyecto de configuración

  • Menú archivo -> Nuevo -> Proyecto --> Otros Tipos de Proyectos --> el programa de Instalación y Despliegue

  • Establezca las propiedades del proyecto, utilizando la ventana propiedades

El artículo Cómo crear un paquete de instalación mediante Visual Studio. NET proporciona los detalles.

 10
Author: Asad Butt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-02-22 19:24:38

¿Por qué inventar ruedas usted mismo mientras hay un coche listo para usted? Solo encuentro estas herramientas súper fáciles e intuitivas de usar: Instalador avanzado. Este video de un minuto debería ser suficiente para impresionarte. Aquí está la guía ilustrativa del usuario.

 3
Author: Diansheng,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-04-18 03:13:52