IsArchive

Проверка, является ли указанный файл архивом.
BOOL WINAPI IsArchive(
  const char *Name,
  const unsigned char *Data,
  int DataSize
);

Параметры

Name
имя архива
Data
данные из архивного файла (указатель на данные размером DataSize от начала файла).
DataSize
размер переданных данных

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

TRUE, если тип архива поддерживается плагином.

Пример

Пример определения архива ZIP (ZIP.CPP)

BOOL WINAPI _export IsArchive(const char *Name,
                      const unsigned char *Data,
                      int DataSize)
{
  for (int I=0;I < DataSize-10;I++)
  {
    const unsigned char *D=Data+I;
    if (D[0]=='P' && D[1]=='K' &&
        D[2]==3   && D[3]==4   &&
        D[8]<15   && D[9]==0)
    {
      SFXSize=I;
      return(TRUE);
    }
  }
  return(FALSE);
}
Смотрите также:
поддержка архивов