# Функция GetParam

Получает настройки обработчика роутеров.

## Синтаксис

Delphi
C++

    function GetParam(
      St: DWORD;
      Value: Pointer;
      Size: DWORD;
      var outLength: DWORD
    ): Bool; stdcall;

    BOOL WINAPI GetParam(
      _In_   DWORD St,
      _Out_  LPVOID Value,
      _In_   DWORD Size,
      _Out_  DWORD *outLength
    );

## Параметры

St [in]

  Индекс настройки, указывает параметр, который необходимо получить.

  Значение | Описание
  --- | ---
  stEnableDebug
  0

  Включёно или выключено отладочное журналирование.

  Value будет указателем на BOOL.

  stDebugVerbosity
  1

  Уровень детализации журналирования.

  Value будет указателем на BYTE.

  stWriteLogCallback
  2

  Указатель на процедуру обратной связи WriteLog.

  Value будет указателем на начальный адрес процедуры.
  NULL также может быть получен, если процедура обратной связи не указана.

  stSetTableDataCallback
  3

  Указатель на процедуру обратной связи SetTableData.

  Value будет указателем на начальный адрес процедуры.
  NULL также может быть получен, если процедура обратной связи не указана.

  stUserAgent
  4

  Строка User-Agent по умолчанию для клиента HTTP.

  Value будет указателем на null-терминированную строку.

  stUseCustomPage
  5

  Используется ли другая страница для определения.

  Value будет указателем на BOOL.

  stCustomPage
  6

  Путь страницы для определения.

  Value будет указателем на null-терминированную строку.

  stDualAuthCheck
  7

  Используется ли двойная проверка аутентификации для Basic Authentication.

  Value будет указателем на BOOL.

  stPairsBasic
  8

  Строка со словарём для Basic Authentication.

  Каждая пара в словаре разделена символами \r\n, при этом имя пользователя и пароль разделены символом \t.

  Value будет указателем на null-терминированную строку.

  stPairsDigest
  9

  Строка со словарём для Digest Authentication.

  Каждая пара в словаре разделена символами \r\n, при этом имя пользователя и пароль разделены символом \t.

  Value будет указателем на null-терминированную строку.

  stUseProxy
  10

  Используется ли прокси сервер.

  Value будет указателем на BOOL.

  stProxyIP
  11

  IP адрес прокси сервера.

  Value будет указателем на null-терминированную строку.

  stProxyPort
  12

  Порт прокси сервера.

  Value будет указателем на WORD.

  stUseCredentials
  13

  Включена ли дополнительная проверка аутентификации.

  Value будет указателем на BOOL.

  stCredentialsUsername
  14

  Имя пользователя для дополнительной проверки аутентификации.

  Value будет указателем на null-терминированную строку.

  stCredentialsPassword
  15

  Пароль для дополнительной проверки аутентификации.

  Value будет указателем на null-терминированную строку.

  stReserved
  16

  Зарезервировано на использование в будущем.

  stFilterRules
  17

  Строка с правилами фильтра.

  Правило фильтра состоит из места, режима и сверяемой строки.

  Допустимые места:
  "body" - тело ответа.
  "serv" - имя сервера.
  "relm" - имя realm.

  Допустимые режимы:
  "eq" - строка совпадает со сверяемой строкой.
  "neq" - строка не совпадает со сверяемой строкой.
  "cnt" - строка содержит сверяемую строку.
  "ncnt" - строка не содержит сверяемую строку.

  Каждое правило разделено символами \r\n, при этом поля разделены символом \t.

  Value будет указателем на null-терминированную строку.

Value [out]

  Указатель на буфер для получаемого значения. Тип значения зависит от выбранного индекса настройки.

Size [in]

  Размер буфера до вызова функции, в байтах.

outLength [out]

  Необходимый размер буфера после вызова функции, в байтах.

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

Если функция выполнилась успешно, возвращается ненулевое значение.

Если же функция выполнилась неудачно, возвратится нуль.