-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathStructType.h
More file actions
104 lines (92 loc) · 3.54 KB
/
StructType.h
File metadata and controls
104 lines (92 loc) · 3.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
/////////////////////////////////////////////////////////////////////////////
//StructType.h
/////////////////////////////////////////////////////////////////////////////
#ifndef T_STRUCT_TYPE_H
#define T_STRUCT_TYPE_H
/////////////////////////////////////////////////////////////////////////////
//CONSTANTS
/////////////////////////////////////////////////////////////////////////////
//velichina hranimih strokovih dannih
#define MAX_LOADSTRING 256 + 1 //+1 t.k. stroka zakanchivaetsya BYTE = 0x00
//soobsheniya po obrabotke arhivov
#define TTERMINATE_THREAD 1
#define TMESSAGE_OK 0
#define TERROR_OPEN_FILE -1
#define TERROR_READ_FILE -2
#define TERROR_SEEK_FILE -3
#define TSUDDEN_END_FILE -4
#define TERROR_FORMAT -5
#define TERROR_NOT_DLL -6
#define TERROR_DLL -7
#define TERROR_CREATE_WINDOW -8
#define TERROR_UNKNOWN -9
//soobsheniya iz potoka obrabotki arhva k osnovnomu oknu
#define WM_THREAD_FINISHED 10001
#define WM_THREAD_PERCENT 10002
//soobsheniya dlya obrabotki fayla
#define TEST_ARC 10
#define ANALYZE_ARC 11
//typi zakladok
enum TypeOfTabItems
{
T_INFO, //parametri arhiva
T_CONTEXT, //derevo faylov i papok
T_COMMENT, //kommentariy arhiva
T_SETTINGS, //nastroyki
T_ABOUT, //o programme
T_MAX_TAB_ITEM, //maximal'noe kolichestvo zakladok (tak udobnee)
T_NULL //pustaya/default
};
//obrabativaemie tipi arhivov
enum TypeOfArchive
{
T_UNKNOWN, //default
T_ACE, //*.ace
T_ARC_PAK, //*.arc; *.pak
T_ARJ, //*.arj
T_BH, //*.bh (Blak Hole)
T_BZIP2_TBZ2, //*.bz2; *.tbz2 as *.bz2 for file *.tar
T_CAB, //*.cab
T_CPIO, //*.zpio
T_DWC, //*.dwc
T_GZIP_TGZ, //*.gz; *tgz as *.gz for file *.tar
T_HA, //*.ha
T_LHA_LZH, //*.lha; *.lzh
T_PPM, //*.ppm
T_RAR, //*.rar
T_SQZ, //*.sqz
T_TAR, //*.tar
T_Z, //*.z
T_ZIP_JAR, //*.zip; *.jar (Java ARhiver)
T_ZOO, //*.zoo
T_SEVEN_ZIP, //*.7z
T_NUMBER_ARCHIVES, //(T_NUMBER_ARCHIVES-1) - izvestnoe kolichestvo arhivov
T_WCX_PLUGIN_TC //*.* arhivatorniy (wcx) plagin Total Commander
};
/////////////////////////////////////////////////////////////////////////////
//OTHER STRUCTURES
/////////////////////////////////////////////////////////////////////////////
//dannie peredavaemie v sozdavaemiy potok
typedef struct _DataForThread
{
HWND hWnd; //okno dlya vozvrata soobsheniy ot potoka
HANDLE hEventEnd; //sobitie zakritiya potoka
char* Path; //fayl dlya analiza
int Flag; //testirovat' ili analizirovat'
BOOL BeginThread; //zapusk v rabochem potoke ili net
} DataForThread;
//dannie peredavaemie dlya testirovaniya/razbora arhiva
typedef struct _DataForArchive
{
int SFX; //0 - smotret' SFX arhivi; 1 - net
unsigned SizeSFX; //maksimal'niy razmer SFX modulya
unsigned InvertRatio; //kak rasschitivat' sjatie (0: ratio = puck/unpack; 1: ratio = 1 - puck/unpack)
char* pTargetFile; //fayl dlya kotorogo sozdaetsya logfile
char* PathLF; //imya logfayla ("" - net logfile)
int NewLF; //0 - dopisivatl; 1 - perepisivat' logfile
int DetailLF; //1 - nedetalezirovanniy; 2 - detalezirovanniy logfile
unsigned WidthAuthorName; //shirina avtora soobsheniya dlya logfile
unsigned WidthMessage; //shirina soobsheniya dlya logfile
char* pUnArchiveDll; //DLL dlya dannogo tipa arhiva (chitat' kommentariy)
} DataForArchive;
#endif //T_STRUCT_TYPE_H