Veréis, he puesto en producción una aplicación WinForms conectada a una base de datos SQL Server 2008 R2 Express. Forma parte de un departamento con 4 ordenadores.
Tanto la aplicación como la base de datos la he instalado en uno de los PCs. Entonces, los 3 PCs cliente restante (solo tienen instalada la aplicación, la base de datos no) se conectaran remotamente al PC donde está instalada la base de datos.
La aplicación funciona perfectamente en el PC local, tanto la aplicación en si como la conexión a la base de datos. Pero los PCs cliente no. Los PCs cliente no conectan al PC donde está instalada la base de datos.
Preparando el terreno, en la base de datos activé el protocolo TCP/IP y puesto el puerto 1433 en IPALL. Además, activé el servicio SQL Browser para permitir conexiones remotas.
La base de datos tiene una instancia (de nombre BASEDATOS).
Además, en el PC que hace de servidor puse las correspondientes excepciones en el Firewall de Windows (o sea, la del puerto TCP 1433, al UDP 1434, al programa SQLServr.exe y SQLBrowser.exe)
El error que da la aplicación en los PCs cliente es el siguiente:
Para vuestra información, el PC donde está instalada la base de datos tiene esta IP: 192.168.0.38. Por lo tanto, la cadena de conexión que he puesto en los 3 PCs cliente es la siguiente:
Código XML:
Ver original
<?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="cn" connectionString="Data Source=192.168.0.38,1433;Network Library=DBMSSOCN;Initial Catalog=nombrebasededatos;User ID=usuario;Password=contraseña" providerName="System.Data.SqlClient"/> </connectionStrings> </configuration>
Desactivé el Firewall de Windows para ver si se trataba del Firewall pero a pesar de todo el tema sigue igual. Por lo tanto, sospecho que puede ser la cadena de conexión.
¿Qué puede pasar?