Вниз
Скачать: CL | DM;

работа с потоком ввода   Найти похожие ветки 

← →
kaif ©   (2002-11-03 14:32) [0]

Пробую писать простейшие CGI на Delphi. Вывод текста как-то организовал с помощью writeln (вместо сишного stdio.h printf).
А вод прием параметров в потоке ввода для метода POST HTTP протокола не знаю, как прикрутить. В СИ этому соответствует функция fread(), а в паскале как сделать - не знаю. Нужна функция, читающая N байт из стандартного потока ввода (как бы с консоли если ввести N байт). КОличестово байт N я знаю из переменной окружения. Нужно только считать эти байты в консольное приложение...
Или же все же СИ поставить и не мучиться?


← →
Друмлин   (2002-11-03 17:50) [1]


var stdin,stdout,I:integer; s,variable:string;
...
StdIn := GetStdHandle(STD_INPUT_HANDLE);
StdOut := GetStdHandle(STD_OUTPUT_HANDLE);
S := "";
I := StrToInt(Variable);
FileSeek(StdIn, 0, FILE_BEGIN);
SetString(S,nil , I);
FileRead(StdIn, S[1], I);


← →
kaif ©   (2002-11-04 00:17) [2]

2 Друмлин (03.11.02 17:50)
Большое спасибо! У меня это заработало!
Правда, я уже успел написать на СИ, но я очень рад, что оказалось возможным сделать то же самое и на Паскале, так как Delphi для меня привычнее, чем СИ, а в данный момент мне это нужно было лишь для понимания работы cgi как такового в связи с изучением php.
Правда у меня остался один вопрос: обычно всякие Handle надо освобождать. Видимо STD_INPUT_HANDLE или STD_OUTPUT_HANDLE освобождать не надо? По крайней мере ничего на этот счет в
Win32-SDK (Help-е) я не нашел...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
1-37204
TCrash
2002-12-30 12:53
2003.01.13
Отловить закрытие формы


6-37232
Dima_S
2002-11-12 04:08
2003.01.13
Получение списка файлов с Ftp.


3-36933
Roma111
2002-12-18 08:49
2003.01.13
Не найдено описание для события с кодом ( 251 )


6-37252
_ol_
2002-11-06 17:11
2003.01.13
Всего лишь написать telnet...


3-36968
Сергей Бушин
2002-12-14 17:58
2003.01.13
Поле AutoIncrement при вставке в ClientDataSet




   Наверх