Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Archivos txt (https://www.clubdelphi.com/foros/showthread.php?t=69775)

cmfab 08-09-2010 14:07:03

Archivos txt
 
Hola a todos, quisiera hacerles dos preguntas

1- Tengo una aplicacion que lee de dos archivos de textos cosntantes (que no varían). archiv1.txt y archiv2.txt. como puedo incluirlos en mi ejecutable cuestión que no vayan a ser borrados accidentalmente.

2- Como puedo hacer para crear un tercer archivo de texto inexistente a partir de uno de los dos que supuestamente estaran embebidos como recurso en el ejecutable de mi aplicación

desde ya mil gracias a todos

Neftali [Germán.Estévez] 08-09-2010 16:16:18

Cita:

Empezado por cmfab (Mensaje 375778)
1- Tengo una aplicacion que lee de dos archivos de textos cosntantes (que no varían). archiv1.txt y archiv2.txt. como puedo incluirlos en mi ejecutable cuestión que no vayan a ser borrados accidentalmente.
2- Como puedo hacer para crear un tercer archivo de texto inexistente a partir de uno de los dos que supuestamente estaran embebidos como recurso en el ejecutable de mi aplicación

Pues la (1) te la has respondido tú mismo con la segunda. Puedes incluir esos textos o los ficheros completos como recursos dentro del EXE. Aquí puedes ver algunos ejemplos.
Basta con que cargues el texto del recurso en un TMemo o en un TStrings y utilices el método SaveToFile para crear u nuevo fichero con ese texto.

cmfab 08-09-2010 17:37:14

Gracias por tu respuesta. el problema es que he trabajado algo con recursos pero siempre fueron bitmaps o cursores. hasta donde he sabido. el ejemplo del link tambien viene para ese tipo de archivos. me confunde como hacer archivos .res con archivos de textos en el ejecutable. osea en otras palabras aun no me ha quedado claro

Neftali [Germán.Estévez] 08-09-2010 17:53:49

Te cojo algunos trozos que uso yo.

Tengo un fchero .RC de texto con es definido (mira el último recurso):
Código:

CBSTYLE_RO        BITMAP  "Resources\CheckBoxStylesDisabled.bmp"
CBSTYLEFOCUSED_RO BITMAP  "Resources\CheckBoxStylesFocusDisabled.bmp"
CALCULADORA      BITMAP  "Resources\Calculadora.bmp"

// Paginas web de traduccion
RES_HTML_PAGE2                    RCDATA  "Resources\_html2.txt"

El fichero _html2.txt es un fichero de texto con TAGS HTML.

Para compilar este fichero .RC utiulizo un fichero por lotes .CMD con lo siguiente:

Código:

brcc32 AppRes.rc >> Errores.txt
Que me genera un fichero AppRes.res para mi aplicación y que tengo añadido al proyecto.

Y el código que utilizo en mi proyecto es algo así:

Código Delphi [-]
var
  rs: TResourceStream;
  tf: TStrings;
  b:Boolean;
  resName:String;
begin
  // Se trata de seguridad de Visualizacion?
  resName := 'RES_HTML_PAGE2';
  // Llamar a la búsqueda de recurso
  b := FindInstanceOfResource(resName, RT_RCDATA, HInstance);
  if not b then begin
    // Error de recurso no encontrado
    raise ...
    Exit;
  end;
  // Crear el StringList
  tf := TStringList.Create;
  // proteccion para liberar
  try
    // proteccion
    try
      // Cargar el recurso
      rs := TResourceStream.Create(HInstance, resName, RT_RCDATA);
      tf.LoadFromStream(rs);
    except
      // Error recurso no encontrado (al recuperar)
      raise ...
      Exit;
    end;

    // Devolvemos el TEXTO COMPLETO
    Result := tf.Text;

  // liberar
  finally
    rs.Free;
    tf.Free;
  end;

cmfab 08-09-2010 18:30:50

Gracias Neftalí con tu ejmplo bien ilustrado he logrado mi objetivo. salud y suerte


La franja horaria es GMT +2. Ahora son las 04:21:54.

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