/ домой \ | \ темы / |
21/11/2008 06:47 ViZh: |
Здравствуйте Макс. Очень замечательная у вас программа. Хочу Вам сказать спасибо. Вопрос у меня такой. Есть некая pdqweb.dll, через некое описание текстовое она работает на подобии CGI и далее в СУБД М, я обрабатываю запросы. С ней работаю под IIS, но вот появилось сильное желание поработать с Small HTTP server. Получится то получилось, но вот что то творится с переменными, куда-то девается последний символ в получаемом IP адресе и выдает - %("REMOTE_ADDR")="127.0.0." Не знаю достаточно ли грамотно все объяснил - с уважением Виктор. |
21/11/2008 14:58 Max: |
Как я понял DLL работает по ISAPI интерфейсу. В этом интерфейсе, при запросе переменной окружения вы указывайте длину строки. Вероятно у вас при запросе длина оказывается меньше чем необходимо и последний символ не влазит.
|
21/11/2008 15:05 ViZh: |
Обезает любой адрес и длинный и короткий. Я подставлял и так чтобы последная цифра ip была трехзначной - оставляет два знака. Т.е. просто режет конкретно один последний символ символ независимо от длины.
|
23/11/2008 00:47 Max: |
Он не обрезает адреса просто так. Он возвращает не больше символов чем разрешено в запросе и вы легко можете в этом убедиться просто увеличив значение максимальной длины. Возможно проблема в том, что сервер так же возвращал длину строки, не учитывая завершающего нулевого байта, а при возврате строки он этот нулевой байт учитывал и обязательно добавлял в конец. Сейчас я сделал тестовую версию в которой сервер сообщает размер переменной с учетом завершающего нулевого байта т.е. на байт больше чем надо. Пока не уверен, что это правильно, посмотрю как это будет работать с другими программами. |
24/11/2008 05:46 ViZh: |
Спасибо !!! Вот результат при ip 192.168.1.192: REMOTE_ADDR=192.168.1.192 REMOTE_HOST=192.168.1.192 Т.е. сработало ... почему так все получается я незнаю. C уважением, Виктор. |