Související přípony:
Díky Nikolu Božovičovi vám můžeme poskytnout téměř kompletní strukturu souboru formátu JCD. Tento formát souboru je uložen ve verzi FlashGet 1.73 build 128.
Struktura formátu JCD
LEGENDA
UBYTE - unsigned byte (8 bitů)
UINT - unsigned int (32 bitů)
ArrayOf(TYPE) - pole prvků typu TYPE
OleString - zabalený řetězec, prvek 1 byte (8 bitů) jako N, následovaných N byty (znaky)
enum - bitové pole (32 bitů)
USHORT - unsigned short (16 bitů)
CTime - datum a čas zabalený jako mfc CTime (1/1/1970)
Struktura souboru
|
velikost v bytech |
datový typ |
název |
komentář |
|---|---|---|---|
|
1 |
UBYTE |
Signature |
0x48 |
|
4 |
UINT |
RecordsCount |
celkový počet záznamů v databázi |
|
0+N |
ArrayOf(RCATEGORY or RFILE) |
Records |
pole záznamů |
Struktura RCATEGORY
|
velikost v bytech |
datový typ |
název |
komentář |
|---|---|---|---|
|
4 |
UINT |
type |
definuje typ záznamu (1, 5) |
|
4 |
UINT |
ID |
unikátní identifikátor záznamu |
|
4 |
UINT |
_u01 |
* neznámé |
|
4 |
UINT |
_u02 |
* neznámé |
|
4 |
UINT |
_u03 |
* neznámé |
|
4 |
UINT |
_u04 |
* neznámé |
|
4 |
UINT |
_u05 |
* neznámé |
|
1+N |
OleString |
Name |
název kategorie |
|
1+N |
OleString |
Path |
cesta ke složce kategorie |
Struktura RFILE
|
velikost v bytech |
datový typ |
název |
komentář |
|---|---|---|---|
|
4 |
UINT |
type |
definuje typ záznamu (2) |
|
4 |
UINT |
ID |
unikátní identifikátor záznamu |
|
4 |
UINT |
_u03 |
* neznámé (6) |
|
4 |
UINT |
_u04 |
* neznámé (2) |
|
4 |
UINT |
IDDirCurrent |
aktuální kategorie záznamu |
|
4 |
UINT |
_u06 |
* neznámé (0) |
|
4 |
UINT |
_u07 |
* neznámé (79) |
|
1+N |
OleString |
Url |
url ke stažení souboru |
|
4 |
enum |
Flags |
bitové příznaky [viz *1] |
|
1+N |
OleString |
ServerUsername |
uživatelské jméno pro přihlášení na server |
|
1+N |
OleString |
ServerPassword |
heslo pro přihlášení na server |
|
4 |
UINT |
IDDirTarget |
cílová kategorie pro kompletní stažení |
|
1+N |
OleString |
Filename |
název souboru ke stažení |
|
4 |
UINT |
NumOfCnn |
počet připojení |
|
1+N |
OleString |
Folder |
složka pro stažení |
|
1+N |
OleString |
Comment |
komentář |
|
4 |
UINT |
_u11 |
* neznámé (1 / 65537) |
|
4 |
enum |
State |
1 - pozastaveno, 2 - spuštěno, 4 - dokončeno, 8 - chyba |
|
4 |
INT |
FileSize |
velikost souboru ze serveru, -1 pokud neznámá velikost |
|
1+N |
OleString? |
_s01 |
* neznámé (0) možná byte ? |
|
4 |
CTime |
FileDate |
datum souboru převzaté ze serveru |
|
4 |
CTime |
CreateTime |
čas vytvoření záznamu souboru |
|
4 |
CTime |
CompleteTime |
čas dokončení souboru, datum a čas posledního zápisu |
|
1+N |
OleString |
Referer |
url referer |
|
4 |
UINT |
TotalTime |
celkový počet sekund, které stahování trvalo |
|
2 |
USHORT |
_us18 |
* neznámé (0) |
|
4 |
UINT |
AltUrlCount |
počet alternativních url |
|
0+N |
ArrayOf(ALTURL) |
AltUrls |
pole alternativních url (může mít nulovou velikost) |
|
4 |
UINT |
JetCount |
počet stahovacích proudů |
|
0+N |
ArrayOf(JETITEM) |
JetItems |
pole stahovacích proudů (může mít nulovou velikost) |
|
4 |
UINT |
_u21 |
* neznámé (0) |
Struktura ALTURL
|
velikost v bytech |
datový typ |
název |
komentář |
|---|---|---|---|
|
1+N |
OleString |
Url |
alternativní url |
|
4 |
UINT |
_u01 |
* neznámé (0) |
Struktura JETITEM
|
velikost v bytech |
datový typ |
název |
komentář |
|---|---|---|---|
|
4 |
UINT |
start |
začátek adresy dokončeného stahování proudu souboru |
|
4 |
UINT |
end |
konec adresy dokončeného stahování proudu souboru |
// Bitové pole [*1]
[Flags]
public enum JCDFileFlags : uint
{
bit1 = 1, /* nedokončené stahování */
bit2 = 2, /* nedokončené stahování */
LoginToServer = 4,
bit4 = 8,
bit5 = 0x10,
bit6 = 0x20,
bit7 = 0x40,
bit8 = 0x80,
bit9 = 0x100, /* nedokončené stahování */
bit10 = 0x200, /* nedokončené stahování */
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
}