![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы с CGI-приложениями [D7, WinME]
SergProger © (2006-05-01 13:00:00)Всем привет! Люди, объясните мне пожалуйста, как писать CGI-приложения. Пробовал написать такое:
program CGI_test;
{$APPTYPE CONSOLE}
{$E CGI}
begin
WriteLn('<HTML>');
WriteLn('<HEAD>');
WriteLn('<TITLE>Простейшее CGI приложение</TITLE>');
WriteLn('<META http-equiv="Content-Type" content="text/html; charset=windows-1251">');
WriteLn('</HEAD>');
WriteLn('<BODY>');
WrОтiteLn('<CENTER><H1>HELLO WORLD</H1></CENTER>');
WriteLn('</BODY>');
WriteLn('</HTML>');
end.
Компилируется нормально, но на сервере запускаться оно не хочет. Объясните мне, в чём проблема?
SergProger (2006-06-01 01:39:00) [1]Но всё-таки, даже с процедурой WriteFile приложение не хочет работать. Кроме того, я выяснил, что сервер работает под Unix. Зацените работу, если хотите >>> http://sergproger.h16.ru
SergProger (2006-05-03 13:09:00) [2]OK, спасибо, понял. Дело в том, что с WriteFile я впервые сталкиваюсь... :-)
DrPass (2006-05-02 00:19:00) [3]А что там сложного?
uses
windows;
var
h: THandle;
cnt: cardinal;
begin
h:= GetStdHandle(STD_OUTPUT_HANDLE);
WriteFile(h, '<HTML>', 6, cnt, nil);
WriteFile(h, '<HEAD>', 6, cnt, nil);
WriteFile(h, '<TITLE>Простейшее CGI приложение</TITLE>',
length('<TITLE>Простейшее CGI приложение</TITLE>'), cnt, nil);
end.
SergProger (2006-05-01 23:05:00) [4]Вот если бы кто-нибудь мне объяснил, как пользоваться процедурой WriteFile...
DrPass (2006-05-01 16:30:00) [5]
> Sergey Masloff (01.05.06 14:44) [8]
Спорить не буду, но когда у меня возникла необходимость перехватить вывод консольного приложения, программа напрочь отказалась принимать консольку с writeln. А WriteFile - на ура
Sergey Masloff (2006-05-01 14:44:00) [6]DrPass © (01.05.06 14:31) [7]
Пишет-пишет.
Кстати вышеприведенный код работает
DrPass (2006-05-01 14:31:00) [7]Попробуй вместо writeln попользовать GetStdHandle(STD_HANDLE_OUTPUT) и соответственно WriteFile. Как показывает практика, writeln НЕ ПИШЕТ в стандартный поток вывода, а выводит сразу на консоль.
Sergey Masloff (2006-05-01 14:20:00) [8]TUser © (01.05.06 14:16) [5]
>на сервере тебе разрешено запускать виндоусовские программы в >качестве cgi?
Вот я тоже удивился
Кстати заголовки можно не писать если сервер под виндой все будет работать
TUser (2006-05-01 14:16:00) [9]А http заголовки не надо писать?
Кроме того, - на сервере тебе разрешено запускать виндоусовские программы в качестве cgi?
SergProger (2006-05-01 13:43:00) [10]Сервер www.yard.ru Та же проблема на сервере www.holm.ru
Anatoly Podgoretsky (2006-05-01 13:34:00) [11]Серверу можно верить.
SergProger (2006-05-01 13:33:00) [12]Сервер поддерживает CGI, файл находится в нужном каталоге, при запуске пишет: "CGI script error".
alex-drob (2006-05-01 13:21:00) [13]На сервере поддержка cgi есть?
Файл находиться в каталоге cgi-bin?
Что происходит при запуске файла на сервере?