|
GetPackerCaps сообщает Total Commander’у, какие возможности поддерживает плагин.
int __stdcall GetPackerCaps();
function GetPackerCaps: integer; stdcall;
Описание
Используйте GetPackerCaps, чтобы возвратить комбинацию из перечисленных значений:
Константа | Значение | Описание
| | 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_CAPS_NEW и PK_CAPS_MODIFY, чтобы функция PackFiles (упаковка файлов) никогда не вызывалась, тогда вы можете не писать код для PackFiles.
Пропустите PK_CAPS_MULTIPLE, чтобы функция PackFiles (упаковка файлов) передавала только один файл.
Пропустите PK_CAPS_DELETE, чтобы функция DeleteFiles (удаление файлов) никогда не вызывалась.
Пропустите PK_CAPS_OPTIONS, чтобы функция ConfigurePacker (настройка упаковщика) никогда не вызывалась.
PK_CAPS_MEMPACK даёт возможность использовать функции StartMemPack, PackToMem и DoneMemPack (упаковка в памяти).
Если возвращается значение PK_CAPS_BY_CONTENT, то Total Commander вызывает функцию CanYouHandleThisFile, когда пользователь нажимает Ctrl+PgDn на файле неизвестного типа (файле, не показанном как архив).
Если возвращается значение PK_CAPS_SEARCHTEXT, то Total Commander может искать по тексту в архивах, упакованных этим плагином (необязательно, что архив может быть создан только этим плагином). Желательно не добавлять эту функцию в плагинах типа DiskDir, в которых содержимое может быть недоступно. (архивы, созданные DiskDir – обычные текстовые файлы с расширением LST, каждая строка которых содержит только исходное имя файла с некоторыми атрибутами)
Если возвращается значение PK_CAPS_HIDE, то Total Commander не показывает файлы этого типа как архивы. Это удобно для плагинов, которые в основном используются для создания файлов, например командных bat, cmd файлов, avi файлов и т.д. Чтобы открыть такой архив, нужно нажать Ctrl+PgDn, потому что Enter может запустить ассоциированное приложение.
Если не вернуть PK_CAPS_MULTIPLE, то Total Commander при упакове всегда ставит галочку «Отдельные архивы для каждого выбранного файла/каталога».
Непонятно, почему предлагается пропускать значения и не_вызывать функции, а не добавлять и вызывать. Разбил на отдельные абзацы. Написано слито, запутанно, переделать в одном стиле.
Важное замечание:
После смены возвращаемых значений функции, например добавления возможности упаковки, вы должны переустановить плагин в Total Commander, иначе новые возможности не определятся.
Константа | Значение | Описание
| PK_SKIP | 0 | Пропустить файл (без распаковки)
| PK_TEST | 1 | Тестировать целостность файла
| PK_EXTRACT | 2 | Распаковать файл на диск
|
|