Re[2]: CHttpFilterContext::GetServerVariable
От: ShekhovtsovS  
Дата: 30.04.08 12:43
Оценка:
Поправлено форматирование текста. — SchweinDeBurg

Здравствуйте, febus, Вы писали:

F>Здравствуйте, ShekhovtsovS, Вы писали:

F>здесь

Спасибо за ссылку, но к сожалению в ней нет ничего что помогло бы мне решить мою проблему

еще раз опишу

для реализации isapi фильтра нужно унаследоваться от CHttpFilter и переопределить в нем несколько методов.
один из методов
virtual DWORD OnPreprocHeaders(CHttpFilterContext* pCtxt, PHTTP_FILTER_PREPROC_HEADERS pHeaderInfo);

мне нужно в этом методе узнать физический адрес узла текущего запроса.
для этого пытаюсь определить серверную переменную APPL_PHYSICAL_PATH,


DWORD CMyFilter::OnPreprocHeaders(CHttpFilterContext* pCtxt, PHTTP_FILTER_PREPROC_HEADERS pHeaderInfo)
{
    DWORD dwError = ERROR_SUCCESS;
    char buffer[256];
    DWORD buffSize = sizeof(buffer);
    if (!pCtxt->GetServerVariable("APPL_PHYSICAL_PATH", buffer, &buffSize ))
    {
        dwError = GetLastError();
        тут получаю dwError = ERROR_INVALID_DATA
    }

думаю что это не ошибка, т.е. в том смысле на этой стадии iis еще не производит маппинг на физические пути, и поэтому не возвращает значение.
но может быть можно что-то придумать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.