FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Leer *.Ini desde la Unidad de proyecto (*.dpr))
Hey puedo leer un archivo ini desde cualquier unidad de mi proyecto pero yo quiero obtener algunos datos desde mi unidad de proyecto, como hago para leer un valor del ini desde ahi. Yo lo intente asi:
Código:
program SCLClientePro; uses Forms, Utime in 'Utime.pas' {Foprincipal}, Inifiles; var config:Tinifiles; x:boolean;dir:string; {$R *.RES} begin Application.Initialize; dir:=extractfiledir(application.ExeName); Config:=Tinifile.Create(dir+'\Configuracion.ini'); x:=Config.Readbool ('VENTANA INICIO','VALOR',FALSE); if x then begin Foinicio:=TFoinicio.Create(application); if foinicio.ShowModal<>1 then Application.Terminate; foinicio.Free; end; //if config.Free; Application.CreateForm(TFoprincipal, Foprincipal); Application.Run; end.
__________________
Powered by Gel |
#2
|
||||
|
||||
Hola,
Incluye la unidad "IniFiles" en la cláusula "Uses". |
#3
|
||||
|
||||
ya la inclui en la clausula Uses
Ya la inclui en la clausula Uses, si ves vien el codigo ahi esta.
Código:
uses Forms, Utime in 'Utime.pas' {Foprincipal}, Inifiles; uses Inifiles, Forms, Utime in 'Utime.pas' {Foprincipal}; [/code] y nada.
__________________
Powered by Gel |
#4
|
||||
|
||||
Hola,
Disculpa, llevas razón, no me había fijado lo suficiente en el código. Acaso halla influido en mi ceguera el que no utilizases las etiquetas "DELPHI" sino las etiquetas "CODE". Pero bueno, fuera como fuera, ahí estaba la unidad "IniFiles". Dos cosas me extrañan: haciendo pruebas no encuentro problemas para leer un archivo "ini" ni tampoco para escribir en el mismo. Por otro lado me extraña que puedas usar la función "ExtractFileDir"... puesto que (si he visto bien) no incluyes la unidad "SysUtils" en donde está declarada... Por otro lado encuentro en el código ciertas instrucciones un tanto confusas... por ejemplo: Ahora mismo no recuerdo si es posible que "ShowModal" devuelva "1", pero, en todo caso, un "Application.Terminate" ahí, ¿no dejaría el resto de instrucciones sin ejecutarse? Me refiero sobre todo a las encargadas de liberar recursos, como "Config.Free". No lo sé. De cualquier modo, ya digo, no encuentro problemas para leer y escribir de y en un archivo "ini" desde el archivo de proyecto, o sea, desde el archivo "dpr"... ¿Todavía sigues sin poder hacerlo o quizás ya diste con el problema? Última edición por dec fecha: 29-07-2005 a las 03:18:13. Razón: (corrección del texto) |
#5
|
||||
|
||||
ok estoy haciendo pruebas.
Ok tiense razon en algunas cosas lo que pasa es que estoy haciendo pruebas con ese codigo y nada mas queria saber si se podia leer el ini desde ahi. y no he depurado bien el codigo ese.
postea como lo harias tu en el *.dpr con un ejemplo sencillo me interesa ver donde pones las units extras q utilizara el proyecto en *.dpr Ese codigo me esta dando errores por todo lo que mencionastes anteriormente no mas estoy probando. y lo del codigo de delphi pues no se como insertar aqui codigo delphi me disculpas si me dijeras como seria bueno. Código:
if foinicio.ShowModal<>1 then Application.Terminate;
__________________
Powered by Gel |
#6
|
||||
|
||||
Hola,
Respecto de las etiquetas para incluir código Delphi estas son [ DELPHI ] y [ /DELPHI ] (sin los espacios en blanco). Como usuario registrado que eres puedes editar tus mensajes: lo digo por si quieres cambiar el código fuente de más arriba para incluirlo dentro de las oportunas etiquetas. Por otro lado echa un vistazo al archivo adjunto a ver qué te parece la solución que daría yo al asunto que nos ocupa, no obstante guardarme la posibilidad de realizar algún que otro cambio siempre que se considerase oportuno. Cita:
Sin embargo, estarás conmigo en que es bastante más intuitivo y sencillo leer:
Última edición por dec fecha: 29-07-2005 a las 03:16:37. Razón: (ampliación del texto) |
|
|
|