Soy estudiante de sistemas y me han dejado un proyecto en cual un usuario llevará un control de activos fijos, el detalle aqui es que la aplicación debe tener la capacidad de conectarse 2 distintos servidores y cada uno con sus parametros distintos, es decir usuario y contraseña, las bases de datos tendrian las mismas estructuras pero distintos contenidos (p.ej. activos fijos 2010,2011,etc.), vaya aqui el "reto" es conectarlo a distintas fuentes de datos, para lo cual al principio de la aplicacion aparece un form dialog pidiendo el servidor, usuario y contraseña, con estos tres datos se arma una cadena de conexion que es declarada como variable pública y al momento de hacer la prueba de conexión es exitosa pero, el problema es que al llamar esa variable en otro form no llama la cadena de conexión completa, para ser mas especifico sin password, me arroja un error que me dice que el password no esta indicado, añexo el codigo de la aplicacion:
del dialog
Código:
del form donde llamo la variable:Imports System.Windows.Forms Imports MySql.Data Imports MySql.Data.MySqlClient Public Class Dialog1 ''variable pública Friend cnn As MySqlConnection Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click ''armo la cadena de conexión con las variables ingresadas en los textbox Try cnn = New MySqlConnection cnn.ConnectionString = "server=" & servertxt.Text & ";" & "user id=" & usertxt.Text & ";" & "password=" & passtxt.Text & ";" cnn.Open() If ConnectionState.Open Then MsgBox("Conexion exitosa.") Me.Close() Form1.Show() End If Catch ex As Exception MsgBox("Error. Verificar datos de conexión y volver a intentarlo o contactar al Administrador.") MsgBox(ex.Message) End Try End Sub Private Sub Cancel_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel_Button.Click Form1.Close() End Sub Private Sub Dialog1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load End Sub End Class
Código:
Ahora, como hago para poder usar esa variable de conexión completa, ya que para probar hice que me mostrara un msgbox con la cadena y solo muestra el user id y el server. Espero me puedan ayudar gracias de antemano. Imports Proceso_Adjudicaciones.Dialog1 Imports MySql.Data Imports MySql.Data.MySqlClient Public Class Form2 Dim cnn As MySqlConnection Private Sub Form2_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Try cnn = New MySqlConnection cnn.ConnectionString = Dialog1.cnn.ConnectionString cnn.Open() If ConnectionState.Open Then MsgBox("conexion exitosa") End If Catch ex As Exception MsgBox(ex.Message) End Try End Sub End Class