Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-02-2009
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Poder: 21
rastafarey Va por buen camino
Leer un archivo sin conocer su estructura

Es posible leer un arcivo binario creado en pascal sin conocer la estrutura.

Ejemplo.
Código Delphi [-]
Type
   TValores = Array[1..3] Of String;
   TEstruc = record
      Nombre: String;
      Entero. Integer;
      Valores: TValores;
   End;
Supongamos que se creo la estrutura con ese tipo de registro.
pero no la conocozco es posible leer los datos sin conocer dicha estructrura.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
Responder Con Cita
  #2  
Antiguo 07-02-2009
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
¿Es posible leer Cirilico sin saber que significa cada letra? A ambas preguntas la respuesta es NO. Tienes que saber que estás leyendo para poder interpretarlo. Un archivo binario o de datos contiene mucha información que con un poco de paciencia podría uno deducir primero el tamaño de cada registro, luego el tamaño de cada campo y por último el tipo del mismo. Realmente es difícil más no imposible...Alguna vez hice un programa que podía leer y escribir tablas DBF en Turbo Pascal 5.5 y algo similar anduve investigando.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #3  
Antiguo 07-02-2009
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por rastafarey Ver Mensaje
Es posible leer un arcivo binario creado en pascal sin conocer la estrutura.

Ejemplo.

Código Delphi [-]
Type   TValores = Array[1..3] Of String;
   TEstruc = record
      Nombre: String;
      Entero. Integer;
      Valores: TValores;
   End;

Supongamos que se creo la estrutura con ese tipo de registro.
pero no la conocozco es posible leer los datos sin conocer dicha estructrura.
Un string antiguamente ShortString, era facilmente reconocible porque veías un caracter que en decimal era el tamaño de los siguientes caracteres, los cuales siempre contenian datos congruentes #8cHackAll seguido de 257 #0s ó basura [un total de 256 caracteres = SizeOf(ShortString)], el siguiente caracter (si tambien es un string) es igualmente un valor decimal X seguido X caracteres congruentes que forman una palabra "comprensible".

Un byte ocupa y caracter "solitario" y comunmente poco reconocible, un Word son 2 y un Cardinal son 4; el cual puede ser un valor "extraño" seguido de 3 ceros (#0). Entonces sabemosque tu estructura:

Código:
ShortString(256)
Integer(4)
ShortString(256)
ShortString(256)
ShortString(256)
Entonces el tamaño del archivo mod 1028 será 0 y cada elemento siempre sera de 1028 lo cual leido en una estructura de prueba sera totalmente comprensible.

Espero haberte dado la idea
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
Responder Con Cita
Respuesta



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
Conocer tipo de estructura rastafarey Firebird e Interbase 7 08-01-2008 21:33:07
Leer Archivo txt Yssik OOP 5 26-01-2007 16:12:15
Leer un Archivo newdelphi7 Varios 4 12-12-2006 14:54:33
Leer un archivo (rss)xml en c++ Maximiliano C++ Builder 1 14-07-2006 23:49:23
leer de un archivo javikanin Varios 3 23-11-2004 20:34:32


La franja horaria es GMT +2. Ahora son las 08:32:02.


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
Copyright 1996-2007 Club Delphi