ArcParamFromPlugProc функция

Начало  Предыдущая  Следующая

Функция вызывается плагином, чтобы сообщить программе определенные параметры в процессе работы с архивом.

Плагин может запомнить указатель на эту функцию в ArcInitPluginW.

Синтаксис C++

typedef int (__stdcall *ArcParamFromPlugProc) (

                _In_ LONG_PTR Session,

                _In_ HANDLE hArcData,

                _In_ int ParameterType,

                _In_ LONG_PTR ParameterData

);

 

Параметры

Session [in]

Тип: LONG_PTR

Идентификатор сессии.

hArcData [in]

Тип: HANDLE

Этот параметр содержит значение возвращаемое функцией ArcOpenW. Определяется самим плагином. Если открытие архива не было, то параметр должен равняться 0.

ParameterType [in]

Тип: int

Указывает тип устанавливаемого параметра согласно списку:

Код

Комментарий

PK_SENDPARAM_STAGE

0

Для индикатора процесса устанавливает новый этап.

Например, перед упаковкой файла в архив требуется пройти этап подготовки архива.

Здесь ParameterData – это указатель на структуру ArcProcessingStageData.

Если требуется установить обычный этап, после прохождения этапа подготовки архива, то ParameterData может быть 0. Тогда все значения индикатора сбросятся в то состояние, которое было до спецэтапа.

Плагин должен вызывать этот параметр только при переходе в спецэтап, и при выходе из него.

PK_SENDPARAM_FILESIZE

1

Для индикатора процесса изменяет размер текущего обрабатываемого файла.

Обычно используется программой во время спецэтапа, устанавливаемого параметром PK_SENDPARAM_STAGE.

Данный параметр требуется устанавливать перед обработкой каждого файла в ходе работы на спецэтапе.

Здесь ParameterData – имеет тип *__int64 (указатель на размер файла).

ParameterData [in]

Тип: LONG_PTR

Содержит задаваемые данные. Формат данных определяется параметром ParameterType.

 

Возвращаемое значение

Тип: unsigned int

В случае успеха возвращает 0, иначе – код ошибки.