{ Содержит описания кодов ошибок, флагов и }
{ экспортируемых функций }
{ Перевод файла - Сергей Плотников <mailto:zoth@bk.ru> }
{ От себя добавлена константа E_SUCCESS=0 (успешно ) }
{ }
{ 21.05.2007 }
{ Теперь в записи THeaderDataEx поля PackSize, }
{ PackSizeHigh, UnpSize, UnpSizeHigh типа DWORD вместо }
{ integer }
{ }
{ 15.11.2006 }
{ Перевод wcx_ref2.12 для Total Commander 7.0 }
{ }
{ 24.07.2006 }
{ Исправлен перевод E_TOO_MANY_FILES }
{ }
{ 18.07.2006 }
{ В uses добавлен модуль Windows }
{ В константы добавлена E_SUCCESS (Выполнено успешно) }
{ }
{ Смотрите также перевод справки по написанию }
{ архиваторных плагинов. }
unit WCXHead;
INTERFACE
uses
Windows;
{ Коды ошибок, возвращаемых вызывающему приложению }
const
E_SUCCESS= 0; { Выполнено успешно (добавлено от себя) }
E_END_ARCHIVE= 10; { Нет больше файлов в архиве (конец архива) }
E_NO_MEMORY= 11; { Не хватает памяти }
E_BAD_DATA= 12; { Ошибка в данных }
E_BAD_ARCHIVE= 13; { Ошибка CRC в данных архива }
E_UNKNOWN_FORMAT= 14; { Ошибочный формат архива }
E_EOPEN= 15; { Невозможно открыть существующий файл }
E_ECREATE= 16; { Невозможно создать файл }
E_ECLOSE= 17; { Ошибка закрытия файла }
E_EREAD= 18; { Ошибка чтения из файла }
E_EWRITE= 19; { Ошибка записи в файл }
E_SMALL_BUF= 20; { Буфер слишком мал }
E_EABORTED= 21; { Функция прервана пользователем }
E_NO_FILES= 22; { Файлы не найдены }
E_TOO_MANY_FILES= 23; { Слишком много файлов для упаковки }
E_NOT_SUPPORTED= 24; { Функция не поддерживается }
{ Флаги распаковки }
PK_OM_LIST= 0; { Просмотр содержимого архива }
PK_OM_EXTRACT= 1; { Распаковка содержимого архива }
{ Флаги для ProcessFile }
PK_SKIP= 0; { Пропустить файл (без распаковки) }
PK_TEST= 1; { Тестировать целостность файла }
PK_EXTRACT= 2; { Распаковать файл на диск }
{ Флаги, передаваемые через ChangeVolProc }
PK_VOL_ASK= 0; { Запросить пользователя расположение }
{ следующего тома }
PK_VOL_NOTIFY= 1; { Уведомить приложение, что следующий том }
{ может быть распакован }
{ Флаги упаковки }
{ Флаги для PackFiles }
PK_PACK_MOVE_FILES= 1; { Удалить исходный файл после упаковки }
PK_PACK_SAVE_PATHS= 2; { Сохранять пути файлов }
{ Возвращает GetPackCaps}
PK_CAPS_NEW= 1; { Может создавать новые архивы }
PK_CAPS_MODIFY= 2; { Может изменять существующие архивы }
PK_CAPS_MULTIPLE= 4; { Архив может содержать несколько файлов }
PK_CAPS_DELETE= 8; { Может удалять файлы }
PK_CAPS_OPTIONS= 16; { Есть диалог настроек }
PK_CAPS_MEMPACK= 32; { Поддерживает упаковку в памяти }
PK_CAPS_BY_CONTENT= 64; { Определяет тип архива по содержимому }
PK_CAPS_SEARCHTEXT= 128; { Может искать текст в архиве }
PK_CAPS_HIDE= 256; { Показать как обычный файл (скрыть иконку архива), }
{ не открывать по Enter, только по Ctrl+PgDn }
PK_CAPS_ENCRYPT= 512; { Плагин поддерживает параметр PK_PACK_ENCRYPT }
{ Флаги для упаковки в памяти }
MEM_OPTIONS_WANTHEADERS=1; { Return archive headers with packed data }
{ Коды ошибок для PackToMem }
MEMPACK_OK= 0; { Function call finished OK, but there is more data }
MEMPACK_DONE= 1; { Function call finished OK, there is no more data }
{ Описание экспортируемых функций, вызываемых из DLL }
type
{ Запрашивает смену диска для многотомного архива }
PChangeVolProc=^TChangeVolProc;
TChangeVolProc=function(ArcName: PChar; Mode: longint): longint; stdcall;
{ Сведения об обработке данных - используется для диалога прогресса }
PProcessDataProc=^TProcessDataProc;
TProcessDataProc=function(FileName: PChar; Size: longint): longint; stdcall;
type
THeaderData=packed record
ArcName: array [0..259] of char;
FileName: array [0..259] of char;
Flags,
PackSize,
UnpSize,
HostOS,
FileCRC,
FileTime,
UnpVer,
Method,
FileAttr: longint;
CmtBuf: PChar;
CmtBufSize,
CmtSize,
CmtState: longint;
end;
THeaderDataEx=packed record
ArcName: array[0..1023] of char;
FileName: array[0..1023] of char;
Flags: longint;
PackSize,
PackSizeHigh,
UnpSize,
UnpSizeHigh: DWORD;
HostOS,
FileCRC,
FileTime,
UnpVer,
Method,
FileAttr: longint;
CmtBuf: PChar;
CmtBufSize,
CmtSize,
CmtState: longint;
Reserved: array[0..1023] of char;
end;
tOpenArchiveData=packed record
ArcName: PChar;
OpenMode,
OpenResult: longint;
CmtBuf: PChar;
CmtBufSize,
CmtSize,
CmtState: longint;
end;
tPackDefaultParamStruct=record
Size,
PluginInterfaceVersionLow,
PluginInterfaceVersionHi: longint;
DefaultIniName: array[0..MAX_PATH-1] of char;
end;
pPackDefaultParamStruct=^tPackDefaultParamStruct;
IMPLEMENTATION
END.
Скачать (3 Kb)
|