Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #5  
Antiguo 08-04-2008
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 26
BlueSteel Va por buen camino
Cool

Hola ContraVeneno

mira.. implemente el codigo que me enviastes y me funciona bien.. aunque he tenido un problema...

Vamos por paso...

Cree un formulario para conexión con base de datos, en donde ingreso el servidor, el usuario, la clave y nombre de la base....

cuando ingreso a dicho formulario realizo esto
Código Delphi [-]
     if FileExists('D:\Sistemas\Biovial\config.ini') Then
        Begin
             Parametro := TiniFile.Create('D:\Sistemas\Biovial\config.ini');
             vSer.Text := Parametro.ReadString('BaseDato','Servidor',' ');
             vUsu.Text := Parametro.ReadString('BaseDato','Usuario',' ');
             vPas.Text := Parametro.ReadString('BaseDato','Clave',' ');
             vBas.Text := Parametro.ReadString('BaseDato','Base',' ');
             Parametro.Free;
        End
     Else
        ShowMessage('Debe Ingresar Información de Base de Datos para continuar');

es decir, pregunta si existe el archivo .ini.. si es así me rescata los datos y me los pasa a los Edits correspondientes... de lo contrario me envia para ingresar los datos.

Con el sgte codigo conecto la base de datos.. y esto me funciona super... y los mismos datos que ingrese los almaceno en el archivo .ini... se supone que si no esta creado el archivo .ini me lo crea, de lo contrario solo actualiza...

Código Delphi [-]
     if Datos.ADBiovial.Connected Then Datos.ADBiovial.Connected := False;
     Datos.ADBiovial.ConnectionString := 'Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False'+
                                         ';User ID='+QuotedStr(vUsu.Text)+
                                         ';Initial Catalog='+QuotedStr(vBas.Text)+
                                         ';PassWord='+QuotedStr(vPas.Text)+
                                         ';Data Source='+QuotedStr(vSer.Text);
     try
        Datos.ADBiovial.Connected := True;
        Parametro := TiniFile.Create('D:\Sistemas\Biovial\config.ini');
        Parametro.WriteString('BaseDato','Servidor',vSer.Text);
        Parametro.WriteString('BaseDato','Usuario',vUsu.Text);
        Parametro.WriteString('BaseDato','Clave',vPas.Text);
        Parametro.WriteString('BaseDato','Base',vBas.Text);
        Parametro.Free;
        ShowMessage('Base de Dato ya fue asignada');
     except
        ShowMessage('Error de conexión, ingrese ruta nuevamente');
        vSer.SetFocus;
     end


el problema se me genera cuando ingreso al sistema, lo que realizo en el Evento onCreate del formulario principal (Menu)... es lo sgte

Código Delphi [-]
procedure TMenu.FormCreate(Sender: TObject);
Var
   Parametro:Tinifile;
begin
     // Pregunto si existe el directorio, de lo contrario lo creo...
     If not DirectoryExists('D:\Sistemas\Biovial') Then
        Begin
            {$I-}
            MkDir('D:\Sistemas\Biovial');
        End;
     // Pregunto si existe el archivo, de lo contrario envio a Form Conexion_Base para crear archivo y conectar
     if FileExists('D:\Sistemas\Biovial\config.ini') Then
        Begin
             Parametro := TiniFile.Create('D:\Sistemas\Biovial\config.ini');
             Try
                vSer := Parametro.ReadString('BaseDato','Servidor',' ');
                vUsu := Parametro.ReadString('BaseDato','Usuario',' ');
                vPas := Parametro.ReadString('BaseDato','Clave',' ');
                vBas := Parametro.ReadString('BaseDato','Base',' ');
             Finally
                Parametro.Free;
             End;
             With Datos.ADBiovial Do  // Ruta al Formulario y Componente ADOConection
                  Begin
                      if not Connected Then
                         Begin // Aqui paso todos los parametros y conecto...
                              ConnectionString := 'Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False'+
                                                  ';User ID='+QuotedStr(vUsu)+
                                                  ';PassWord='+QuotedStr(vPas)+
                                                  ';Initial Catalog='+QuotedStr(vBas)+
                                                  ';Data Source='+QuotedStr(vSer);
                              Connected := True;
                              ShowMessage('Base conectada');
                         End
                  End;
        End
     Else
        Begin
             ShowMessage('Debe Seleccionar Base de Datos para continuar');
             Base_Conexion := TBase_Conexion.Create(Self);
             Try
                Base_Conexion.ShowModal;
             Finally
                Base_Conexion.Free;
             End;
        End;
end;

Bueno, esto último me genera el siguiente error...

Project Biobial.exe raised exception class EAccessViolation with message 'Access violation at address 004D5C69 in module BioBial.exe'. Read of address 00000058'.

Aunque el error siempre aparece... presiono Ok.. y se puede ejecutar el sistema ... es decir igual conecta

y realizo la compilación paso a paso el error se marca aquí

Código Delphi [-]
  With Datos.ADBiovial Do  // Ruta al Formulario y Componente ADOConection

Que podra ser ??
__________________
BlueSteel
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Conectar a Interbase por codigo desde Builder C++ Gabo C++ Builder 7 01-05-2015 11:04:54
Ayuda con onexion a sql server 2000 con ado por codigo desde delphi 6 FAGD Conexión con bases de datos 2 26-02-2008 17:24:08
Conectar a SQL Server y Windows 2003 Server Punzo MS SQL Server 2 11-12-2007 20:30:40
conectar por codigo un BD access GustavoCruz Conexión con bases de datos 6 03-08-2007 17:43:05
conectar M$Sql Server con ADO.NET desde Delphi8 bismarito Conexión con bases de datos 5 24-07-2004 20:02:00


La franja horaria es GMT +2. Ahora son las 14:00:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi