Ver Mensaje Individual
  #14  
Antiguo 09-07-2007
[juanramones] juanramones is offline
Miembro Premium
 
Registrado: ene 2007
Posts: 6
Reputación: 0
juanramones Va por buen camino
Cool

Para la Primera pregunta:

Cita:
Empezado por FelipeDiaz
1. Cuando juanramones utiliza .. udl=db1.udl, ... ¿ Udl ... Haria las veces de un alias para el usuario y db1.udl se reemplazaria por el nombre del Archivo (*Mdb, en acces por ejemplo) o el directorio ( como en paradox o Firebird) ?
o cuando te refieres a archivos Udl .....son algunos archivos de un tipo ya predefinidos? como por decir *ini o .Jpg o .Xls. En otras palabras no se si utilizaste una palabra por dar ejemplo o concluyo que ignoro (o ignoraba) la existencia de archivos .udl y para que se utilizan.
La respuesta:

Los archivos con extensión .udl son archivos de configuración de Base de Datos (Microsoft Data Link) que se pueden utilizar en los objetos de conexión a BD de Delphi, como TADOConnection, en la propiedad ConnectionString en el Object Inspector aparece la opción al presionar el botón elipsis <...>

Ejemplo de un archivo .udl (podría ser db1.udl)

Código:
[oledb]
; Everything after this line is an OLE DB initstring
Data Source=C:\BD\db.mdb;
Provider=Microsoft.Jet.OLEDB.4.0;
Password="";
User ID=Admin;
Mode=Share Deny None;
Extended Properties="";
Jet OLEDB:System database="";
Jet OLEDB:Registry Path="";
Jet OLEDB:Database Password="";
Jet OLEDB:Engine Type=5;
Jet OLEDB:Database Locking Mode=1;
Jet OLEDB:Global Partial Bulk Ops=2;
Jet OLEDB:Global Bulk Transactions=1;
Jet OLEDB:New Database Password="";
Jet OLEDB:Create System Database=False;
Jet OLEDB:Encrypt Database=False;
Jet OLEDB:Compact Without Replica Repair=False;
Jet OLEDB:SFP=False;
También al darle doble click al archivo .udl, se abre la utilidad de edición del MS. Importante: los archivos .udl inician con una secuencia de caracteres Unicode especial #$FEFF; por lo que en otras secciones del Foro cuando encuentres más descripciones sobre los archivos .udl vas a notar ejemplos con esa cadena al inicio.

En los archivos de ejemplo de Delphi puede encontrar el siguiente:
C:\Program Files\Common Files\System\Ole DB\Data Links\DBDEMOS.udl


En cuanto a lo de los motores de BD que mencionas (Firebird, Paradox, MS Jet), el código inicial está pensado para el MS Jet, pero creo que para los demás sería trabajar con las cadenas de conexión propias o con ODBC.

Para la Segunda pregunta:

Cita:
Empezado por FelipeDiaz

a. Para agregar un item nuevo, solo utilizo la instruccion de escribir con los neuvos valores sin preocuparme por el orden? es decir el se agrega de ultimo?

b. Esto.. sonara un poco obvio... si por casualidad un usuario piensa crear un nuevo item, pero utiliza una variable ud(cuaqluiera, ejm ud1) que ya ha sido usada ...... simplemente se reescribe..... es decir que solo por codigo tendria yo que controlar el hecho que no altere una ruta pensado crear otra.
La respuesta:

a. Si. Para agregar un ítem nuevo basta con la instrucción
Código Delphi [-]
AIniFile.WriteString('Configuracion', 'udl', ComboBox.Items[ComboBox.ItemIndex]);
y se agrega al final de la sección que se esté indicando.

b. Si se reescribe. Ej:
Código Delphi [-]
AIniFile.WriteString('Configuracion', 'VAR1', 'valor 1');
AIniFile.WriteString('Configuracion', 'VAR1', 'valor 2');

El valor de la variable VAR1 en las dos instrucciones del ejemplo quedaría en el último, osea 'valor 2'

________________________________________
Con colaboración podemos lograr cosas grandes.
Responder Con Cita