4 Errores en Login.....(2)

Iniciado por llogui, 5 Octubre 2021, 00:17 AM

0 Miembros y 1 Visitante están viendo este tema.

llogui

Hola, cómo les va??, disculpen las molestias, me comunico para pedirles ayuda para poder hacer funcionar Login de mi Proyecto...

Sólo me tira 4 errores que se visualizan en Codigo que dejo a continuación de ésta solicitud....

Espero que resuelto este mismo, cumpla su función el Login...dado que es difícil el codigo Login...

Quedo mu agradecido, envío un saludo muy agrande.....

Código (cpp) [Seleccionar]
public: void Loguear(String^ Usuario, int Contraseña)
{
 try
 {
             OleDbConnection^ conn = gcnew OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Users\\Guillermo\\Documents\\Visual Studio 2008\\Projects\\VtaInsumosPc\\VaInsumosPc.accdb;");
 conn->Open();
 OleDbCommand^ cmd = gcnew OleDbCommand("SELECT Usuario FROM Usuario WHERE Usuario = @usuario AND Clave = @password", conn);
 cmd->Parameters->AddWithValue("@usuario", Usuario);
 cmd->Parameters->AddWithValue("@password", Contraseña);
 OleDbDataAdapter^ Oda = gcnew OleDbDataAdapter(cmd);
 DataTable^ dt = gcnew DataTable();
 Oda->Fill(dt);

 if(dt->Rows->Count == 1)
 {
 this->Hide();

 if(dt->Rows[0][0] == "Usuario")
 {
 MessageBox::Show("Bienvenido Usuario..."+ textUsu->Text);
 }
 }
 else
 {
 MessageBox::Show("Usuario y/o Contraseña incorrecta");
 }  
catch (char*)
{
/*MessageBox::Show(ex.Message);*/  
}
/*finally    
{*/
conn->Close();
/*}*/
 }
}




Errores:

Error   2   error C2317: 'try' block starting on line '211' has no catch handlers   c:\users\guillermo\documents\visual studio 2008\projects\vtainsumospc\vtainsumospc\Loguin.h   243
Error   4   error C2317: 'try' block starting on line '211' has no catch handlers   c:\users\guillermo\documents\visual studio 2008\projects\vtainsumospc\vtainsumospc\Loguin.h   243
Error   1   error C2318: no try block associated with this catch handler   c:\users\guillermo\documents\visual studio 2008\projects\vtainsumospc\vtainsumospc\Loguin.h   234
Error   3   error C2318: no try block associated with this catch handler   c:\users\guillermo\documents\visual studio 2008\projects\vtainsumospc\vtainsumospc\Loguin.h   234

Eternal Idol

Revisa las llaves, falta una para terminar el bloque del try.
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

llogui

Noo, si las tiene a las llaves de Cierre, solo que salio cortado......que podria ser el Error de Login, de revisar ese hilo de nuevo??

Dejo muestra del final del codigo donde figuran las llaves que no salieron

Código (cpp) [Seleccionar]

                      else
  {
  MessageBox::Show("Usuario y/o Contraseña incorrecta");
  }  
catch (char*)
{
/*MessageBox::Show(ex.Message);*/ 
}
/*finally    
{*/
conn->Close();
/*}*/
  }
}


};
}



Eternal Idol

No, no las tiene:

Código (c++) [Seleccionar]
try
{
}
catch(...)
{
}
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

llogui

Listo, le agrego una.......si soluciono esos errores, y no funciona por otra cosa, molesto de nuevo, gracias, disculpen las molestias....Abrazos..

Eternal Idol

¿Ya compila? ¿int Contraseña tiene sentido? En fin es tu programa, tenes que depurarlo linea por linea y ver que pasa.
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

llogui

Hola, cómo les va?', espero que bien.......Una vez solucionado el hilo anterior sobre este login, ahora se desacomoda el conn.Close(), después del bloque Try y Catch.....

Dejo codigo, para que Uds. aprecien, y me tiran una mano, disculpen las molestias, un abrazo grande......

Código (cpp) [Seleccionar]
cmd->Parameters->AddWithValue("@password", Contraseña);
  OleDbDataAdapter^ Oda = gcnew OleDbDataAdapter(cmd);
  DataTable^ dt = gcnew DataTable();
  Oda->Fill(dt);

  if(dt->Rows->Count == 1)
  {
  MessageBox::Show("Bienvenido Usuario..."+ textUsu->Text);
  this->Hide();
  Ventas7^ ven = gcnew Ventas7();

  ven->ShowDialog();
  }
else
  {
  MessageBox::Show("Usuario y/o Contraseña incorrecta");
  }
  }
catch (Exception^ e)
{
throw;
}
finally    
{
conn->Close();
}
  }
};
}


Lista de Errores:

Error   1   error C2065: 'conn' : undeclared identifier   242
Error   3   error C2065: 'conn' : undeclared identifier      242
Error   2   error C2227: left of '->Close' must point to class/struct/union/generic type   242
Error   4   error C2227: left of '->Close' must point to class/struct/union/generic type   242


Eternal Idol

Estas tratando de usar la variable conn fuera de su ambito, esta pertenece al block try/catch. Esto es algo que deberias poder observar a simple vista en tu codigo, te esta marcando cual es el problema y en que linea esta.

Por favor no crees mas hilos para preguntar lo mismo.
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón

llogui

#8
Sii, Eternal Idol, tienes razón, te agrdezco mucho, sólo quiero asegurarme que lo debo poner sin el "finally".....para solucionarlo más fácilmente y rápidamente ya que estoy contrarreloj....

Sólo que ahora para compilar y comprobar resultados, me está dando otro error de Destructor...etc...que debo solucionar, al compilar...

Mil millones de gracias, unabrazo grande, quedo agradecido, siempre....




Solucionado......Ya funciona el Login, que compara si con lo ingresado ha daros en la BD,  si es afirmativo, te deja entrar, de lo contrario mensje de "Usuario y o Contraseña invalida....

Mil gracias, espero te vuelva...un abrazo muy agrande, Eternal Idol.....no molestaré más con Login.,..

Saluidos