Tutorial: Crear una acción personalizada

En el tutorial siguiente se muestra el proceso de crear una acción personalizada en una DLL para dirigir a un usuario a una página Web al final de una instalación. Puede utilizar acciones personalizadas para ejecutar código una vez finalizada la instalación.

Nota

Es posible que su equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio incluidos en las instrucciones siguientes. La edición de Visual Studio que se tenga y la configuración que se utilice determinan estos elementos. Para obtener más información, vea Valores de configuración de Visual Studio.

Para crear la acción personalizada

  1. En el menú Archivo, haga clic en Nuevo proyecto.

  2. En el cuadro de diálogo Nuevo proyecto, seleccione Windows y haga clic en Biblioteca de clases. En el cuadro Nombre, escriba OpenWeb.

    El proyecto se agregará al Explorador de soluciones.

  3. En el menú Proyecto, haga clic en Agregar clase y, a continuación, en el cuadro de diálogo Agregar nuevo elemento, seleccione Clase del instalador. Acepte el nombre predeterminado de Installer1 y haga clic en Agregar.

  4. Cambie a la vista Código haciendo clic en haga clic aquí para cambiar a la vista Código en la superficie de diseño (o haciendo clic con el botón secundario en la superficie de diseño y haciendo clic en Ver código).

  5. En el Editor de código, agregue el código siguiente (que abre un explorador web) al archivo de código Installer1, debajo del constructor.

    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Install(ByVal stateSaver As System.Collections.IDictionary)
        MyBase.Install(stateSaver)
    End Sub
    
    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Commit(
      ByVal savedState As System.Collections.IDictionary)
    
        MyBase.Commit(savedState)
        System.Diagnostics.Process.Start("https://www.microsoft.com")
    End Sub
    
    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Rollback(ByVal savedState As System.Collections.IDictionary)
        MyBase.Rollback(savedState)
    End Sub
    
    <Security.Permissions.SecurityPermission(Security.Permissions.SecurityAction.Demand)>
    Public Overrides Sub Uninstall(ByVal savedState As System.Collections.IDictionary)
        MyBase.Uninstall(savedState)
    End Sub
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Install(IDictionary stateSaver)
    {
        base.Install(stateSaver);
    }
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Commit(IDictionary savedState)
    {
        base.Commit(savedState);
        System.Diagnostics.Process.Start("https://www.microsoft.com");
    }
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Rollback(IDictionary savedState)
    {
        base.Rollback(savedState);
    }
    
    [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
    public override void Uninstall(IDictionary savedState)
    {
        base.Uninstall(savedState);
    }
    

    Nota

    Si escribe Public Overrides y luego deja un espacio, IntelliSense mostrará una lista de métodos y propiedades; puede seleccionar Commit en la lista y obtener la declaración completa. Repita el procedimiento para los métodos Install, Rollback y Uninstall.

  6. En el Explorador de soluciones, haga clic con el botón secundario en el archivo de código Class1 y seleccione Eliminar (dado que es innecesario).

Para agregar un proyecto de implementación

  1. En el menú Archivo, elija Agregar y, después, haga clic en Nuevo proyecto.

  2. En el cuadro de diálogo Agregar nuevo proyecto, abra el nodo Otros tipos de proyectos, abra Proyectos de instalación e implementación, haga clic en Instalador de Visual Studio y, a continuación, en Proyecto de instalación. En el cuadro Nombre, escriba Instalador de acción personalizada.

    El proyecto se agregará al Explorador de soluciones y se mostrará el Editor del sistema de archivos.

  3. En el Editor del sistema de archivos, seleccione Carpeta de la aplicación en el panel izquierdo. En el menú Acción, elija Agregar y, a continuación, haga clic en Resultados del proyecto.

  4. En el cuadro de diálogo Agregar grupo de resultados del proyecto, OpenWeb se mostrará en la lista Proyecto. Seleccione Resultado principal.

    En Carpeta de la aplicación aparece Resultado principal desde OpenWeb (Activo).

Para agregar la acción personalizada

  1. Seleccione el proyecto Instalador de acción personalizada en el Explorador de soluciones. En el menú Ver, elija Editor y, a continuación, haga clic en Acciones personalizadas.

    Se abre el Editor de acciones personalizadas.

  2. En el Editor de acciones personalizadas, seleccione el nodo Commit. En el menú Acción, haga clic en Agregar acción personalizada.

  3. En el cuadro de diálogo Seleccionar elemento en el proyecto, haga doble clic en Carpeta de la aplicación. Seleccione Resultado principal desde OpenWeb.

    Resultado principal desde OpenWeb aparece bajo el nodo Commit en el Editor de acciones personalizadas.

  4. En la ventana Propiedades, asegúrese de que la propiedad InstallerClass está establecida en True (éste es el valor predeterminado).

  5. En el Editor de acciones personalizadas, seleccione el nodo Install y agregue Resultado principal desde OpenWeb a este nodo, tal como hizo para el nodo Commit.

  6. En el menú Generar, haga clic en Generar Instalador de acción personalizada.

Para instalar en el equipo de desarrollo

  • Seleccione el proyecto Instalador de acción personalizada en el Explorador de soluciones. En el menú Proyecto, haga clic en Instalar.

    Esto hará que se ejecute el instalador y se instale el Instalador de acción personalizada en el equipo de desarrollo. Al final de la instalación, se iniciará Internet Explorer y se abrirá el sitio web Microsoft.com.

    Nota

    Debe tener permisos de instalación en el equipo para poder ejecutar el instalador.

Para implementar en otro equipo

  1. En el Explorador de soluciones, haga clic con el botón secundario en el proyecto y seleccione Abrir carpeta en el Explorador de Windows.

  2. Navegue a la salida del proyecto y copie Instalador de acción personalizada.msi, Setup.exe y todos los demás archivos y subdirectorios en el directorio de otro equipo.

    Nota

    Para realizar una instalación en un equipo que no esté en red, copie los archivos en un soporte tradicional, como un CD-ROM.

  3. En el equipo de destino, haga doble clic en el archivo Setup.exe para ejecutar el instalador.

    Al final de la instalación, se iniciará Internet Explorer y se abrirá el sitio Web Microsoft.com.

    Nota

    Debe tener permisos de instalación en el equipo para poder ejecutar el instalador.

    Nota

    Si .NET Framework no está todavía instalado en el equipo de destino, esta implementación lo instalará y es posible que tarde varios minutos.

Para desinstalar la aplicación

  1. En el Panel de control, haga doble clic en Agregar o quitar programas.

  2. En el cuadro de diálogo Agregar o quitar programas, seleccione Instalador de acción personalizada y haga clic en Quitar.

    SugerenciaSugerencia

    Para desinstalar un programa de su equipo de desarrollo, con el proyecto Instalador de acción personalizada abierto y seleccionado en el Explorador de soluciones, haga clic en Desinstalar, en el menú Proyecto.

Vea también

Otros recursos

Administración de acciones personalizadas en la implementación