none
Crear Instalador Visual Studio 2019 - SQL server RRS feed

  • Pregunta

  • Buenas, necesito hacer un ejecutable de una aplicación C# windows forms, para instalarla en otra pc. Es un aplicación desarrollada en capas. (Datos, Lógica, Presentación).

    Realice un instalador con el asistente de visual studio pero me da error en la conexión al instalarlo en la otra pc.

    Al crear el instalador le puse el servidor de la pc en la cual estoy probando el instalador , pero igual me da error

    Tengo la conexión en un app. Config en la capa datos.

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <configSections>
        </configSections>
        <connectionStrings>
            <add name="Presentacion.Properties.Settings.SistemaVentasConnectionString"
                connectionString="Data Source=DESKTOP-HHRDUNI\SQLEXPRESS;Initial Catalog=SistemaVentas;Integrated Security=True"
                providerName="System.Data.SqlClient" />
        </connectionStrings>
    </configuration>

    la Clase conexion de la capa datos es la siguiente: 

    class Conexion
        {
            public static string Con = Properties.Settings.Default.cn;
        }

    martes, 14 de enero de 2020 22:40

Respuestas

  • Si es una aplicación de Windows, el archivo de configuración que va a tomar es el que este a nivel del ejecutable, es decir en tu capa de presentación.

    Estas haciendo una separación lógica por arquitectura, pero no física, es decir no lo tienes en múltiples servidores, es por esto por lo que ese archivo de configuración será el que tome en cuenta tu aplicación.

    Ese archivo de configuración deberá tener todo lo de las otras capas.

    ¿que prueba puedes hacer para ver si es eso?

    pon la cadena de conexión correcta en en [nombredelarchivo].exe.config

    Ahora bien...

    Nos podemos encontrar en otro caso.

    Si tu en visual studio, abres el archivo de configuración dentro del explorador de soluciones, te vas a encontrar con por lo menos dos archivos un .reléase y un .debug, estos son los que se usan cuando distribuyes en estas versiones la aplicación. Es posible que estés programando en debug, y cuando distribuyes en reléase, no tengas correctos los .config por lo que no te llega correcta la configuración.

    Una tercera opción.

    Revisa el firewall y ve que el puerto que estés empleando para comunicarte con la base de datos este abierto.

    Saludos


    Ing. Carlos Monroy

    martes, 14 de enero de 2020 22:56
  • hola

    >>pero me da error en la conexión al instalarlo en la otra pc.

    pero expones el servicio a la red? porque por defecto Sql Server no lo tiene habilitado

    Ademas deberias validar que el firewall de windows no este bloqueando el acceso

    Cómo conectarse a un SQL Server remoto

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 14 de enero de 2020 22:56
  • Buenas tardes Leandro, gracias por tu ayuda. Es primera vez que realizo un ejecutable. En un futuro quisiera exponerlo a la red, por el momento solo quiero instalarlo en otra pc,en esta ya esta instalado sql server con la base de datos que utilizara el sistema. 

     Cuando creo el instalador uso la conexión con el servidor de la pc a la cual quiero instalar el sistema y me tira ese error al ejecutarlo.

    miércoles, 15 de enero de 2020 22:51

Todas las respuestas

  • Si es una aplicación de Windows, el archivo de configuración que va a tomar es el que este a nivel del ejecutable, es decir en tu capa de presentación.

    Estas haciendo una separación lógica por arquitectura, pero no física, es decir no lo tienes en múltiples servidores, es por esto por lo que ese archivo de configuración será el que tome en cuenta tu aplicación.

    Ese archivo de configuración deberá tener todo lo de las otras capas.

    ¿que prueba puedes hacer para ver si es eso?

    pon la cadena de conexión correcta en en [nombredelarchivo].exe.config

    Ahora bien...

    Nos podemos encontrar en otro caso.

    Si tu en visual studio, abres el archivo de configuración dentro del explorador de soluciones, te vas a encontrar con por lo menos dos archivos un .reléase y un .debug, estos son los que se usan cuando distribuyes en estas versiones la aplicación. Es posible que estés programando en debug, y cuando distribuyes en reléase, no tengas correctos los .config por lo que no te llega correcta la configuración.

    Una tercera opción.

    Revisa el firewall y ve que el puerto que estés empleando para comunicarte con la base de datos este abierto.

    Saludos


    Ing. Carlos Monroy

    martes, 14 de enero de 2020 22:56
  • hola

    >>pero me da error en la conexión al instalarlo en la otra pc.

    pero expones el servicio a la red? porque por defecto Sql Server no lo tiene habilitado

    Ademas deberias validar que el firewall de windows no este bloqueando el acceso

    Cómo conectarse a un SQL Server remoto

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 14 de enero de 2020 22:56
  • Buenas tardes Leandro, gracias por tu ayuda. Es primera vez que realizo un ejecutable. En un futuro quisiera exponerlo a la red, por el momento solo quiero instalarlo en otra pc,en esta ya esta instalado sql server con la base de datos que utilizara el sistema. 

     Cuando creo el instalador uso la conexión con el servidor de la pc a la cual quiero instalar el sistema y me tira ese error al ejecutarlo.

    miércoles, 15 de enero de 2020 22:51