Extensiones relacionadas:
Gracias a Nikola Bozovic, podemos proporcionarte casi toda la estructura de archivos del formato JCD. Este formato de archivo se guarda con FlashGet versión 1.73 build 128.
Estructura del formato JCD
LEYENDA
UBYTE - byte sin signo (8 bits)
UINT - entero sin signo (32 bits)
ArrayOf(TYPE) - arreglo de elementos de tipo TYPE
OleString - elemento de cadena empaquetada 1 byte (8 bits) como N, y N bytes (caracteres) siguientes
enum - campo de bits (32 bits)
USHORT - short sin signo (16 bits)
CTime - Fecha y hora empaquetada como mfc CTime (1/1/1970)
Estructura del archivo
|
tamaño en bytes |
tipo de dato |
nombre |
comentario |
|---|---|---|---|
|
1 |
UBYTE |
Signature |
0x48 |
|
4 |
UINT |
RecordsCount |
total de registros en la base de datos |
|
0+N |
ArrayOf(RCATEGORY o RFILE) |
Records |
arreglo de registros |
Estructura RCATEGORY
|
tamaño en bytes |
tipo de dato |
nombre |
comentario |
|---|---|---|---|
|
4 |
UINT |
type |
define el tipo de registro (1, 5) |
|
4 |
UINT |
ID |
identificador único del registro |
|
4 |
UINT |
_u01 |
* desconocido |
|
4 |
UINT |
_u02 |
* desconocido |
|
4 |
UINT |
_u03 |
* desconocido |
|
4 |
UINT |
_u04 |
* desconocido |
|
4 |
UINT |
_u05 |
* desconocido |
|
1+N |
OleString |
Name |
Nombre de la categoría |
|
1+N |
OleString |
Path |
Ruta de la carpeta de la categoría |
Estructura RFILE
|
tamaño en bytes |
tipo de dato |
nombre |
comentario |
|---|---|---|---|
|
4 |
UINT |
type |
define el tipo de registro (2) |
|
4 |
UINT |
ID |
identificador único del registro |
|
4 |
UINT |
_u03 |
* desconocido (6) |
|
4 |
UINT |
_u04 |
* desconocido (2) |
|
4 |
UINT |
IDDirCurrent |
categoría actual del registro |
|
4 |
UINT |
_u06 |
* desconocido (0) |
|
4 |
UINT |
_u07 |
* desconocido (79) |
|
1+N |
OleString |
Url |
url de descarga del archivo |
|
4 |
enum |
Flags |
banderas de campo de bits [ver *1] |
|
1+N |
OleString |
ServerUsername |
nombre de usuario para login en el servidor |
|
1+N |
OleString |
ServerPassword |
contraseña para login en el servidor |
|
4 |
UINT |
IDDirTarget |
categoría destino para descarga completa |
|
1+N |
OleString |
Filename |
nombre de archivo para la descarga |
|
4 |
UINT |
NumOfCnn |
número de conexiones |
|
1+N |
OleString |
Folder |
carpeta para la descarga |
|
1+N |
OleString |
Comment |
comentario |
|
4 |
UINT |
_u11 |
* desconocido (1 / 65537) |
|
4 |
enum |
State |
1 - pausado, 2 - iniciado, 4 - completo, 8 - error |
|
4 |
INT |
FileSize |
tamaño del archivo desde el servidor, -1 para tamaño desconocido |
|
1+N |
OleString? |
_s01 |
* desconocido (0) ¿quizás byte? |
|
4 |
CTime |
FileDate |
fecha del archivo tomada del servidor |
|
4 |
CTime |
CreateTime |
tiempo de creación del registro del archivo |
|
4 |
CTime |
CompleteTime |
fecha y hora de finalización del archivo, última fecha y hora de escritura |
|
1+N |
OleString |
Referer |
url referer |
|
4 |
UINT |
TotalTime |
total de segundos que tomó la descarga |
|
2 |
USHORT |
_us18 |
* desconocido (0) |
|
4 |
UINT |
AltUrlCount |
cantidad de urls alternativos |
|
0+N |
ArrayOf(ALTURL) |
AltUrls |
arreglo de urls alternativos (puede tener tamaño cero) |
|
4 |
UINT |
JetCount |
cantidad de jets de descarga |
|
0+N |
ArrayOf(JETITEM) |
JetItems |
arreglo de elementos jet (puede tener tamaño cero) |
|
4 |
UINT |
_u21 |
* desconocido (0) |
Estructura ALTURL
|
tamaño en bytes |
tipo de dato |
nombre |
comentario |
|---|---|---|---|
|
1+N |
OleString |
Url |
url alternativo |
|
4 |
UINT |
_u01 |
* desconocido (0) |
Estructura JETITEM
|
tamaño en bytes |
tipo de dato |
nombre |
comentario |
|---|---|---|---|
|
4 |
UINT |
start |
dirección de inicio del archivo descargado por el jet |
|
4 |
UINT |
end |
dirección de fin del archivo descargado por el jet |
// Campo de bits [*1]
[Flags]
public enum JCDFileFlags : uint
{
bit1 = 1, /* descarga incompleta */
bit2 = 2, /* descarga incompleta */
LoginToServer = 4,
bit4 = 8,
bit5 = 0x10,
bit6 = 0x20,
bit7 = 0x40,
bit8 = 0x80,
bit9 = 0x100, /* descarga incompleta */
bit10 = 0x200, /* descarga incompleta */
bit11 = 0x400,
FtpDownloadSubDirs = 0x800,
CreateSubDirsLocally = 0x1000,
CreateCategory = 0x2000,
bit15 = 0x4000,
bit16 = 0x8000,
bit17 = 0x10000,
bit18 = 0x20000,
bit19 = 0x40000,
bit20 = 0x80000,
bit21 = 0x100000,
bit22 = 0x200000,
bit23 = 0x400000,
bit24 = 0x800000,
bit25 = 0x1000000,
bit26 = 0x2000000,
bit27 = 0x4000000,
bit28 = 0x8000000,
bit29 = 0x10000000,
bit30 = 0x20000000,
bit31 = 0x40000000,
bit32 = 0x80000000
}