Чтение онлайн

на главную

Жанры

Delphi. Учимся на примерах

Парижский Сергей Михайлович

Шрифт:

 WriteLn('</BODY>');

 WriteLn('</HTML>');

end.

Откомпилируйте приложение и присвойте ему имя cgi_test.cgi. Этот CGI-сценарий при обращении к нему создает страницу с заголовком "Первый cgi-сценарий на Delphi" и большим текстом на странице: "Это мой первый CGI-сценарий".

Теперь необходимо создать Web-страницу, которая будет обращаться к этому сценарию. Создайте файл с расширением .html следующего содержимого:

<HTML>

<HEAD>

<ТIТLE>Первый cgi-сценарий на Delphi</TITLE>

</HEAD>

<BODY>

<FORM method="POST" action="cgi/cgi_test.cgi" method="POST">

 <input type="submit" value= "Выполнить">

</FORM>

<р><b>Также вы можете выполнять сценарии, просто делая на них

ссылку: </b><a href="#">ссылка на cgi-сценарий</а>

</BODY>

</HTML>

Это форма с кнопкой, которая активизирует CGI-сценарий (рис. 19.2).

Рис. 19.2. Web-страница

для вызова CGI-сценария

Для того чтобы протестировать сценарий, необходимо переписать рассмотренные выше файлы на сервер с поддержкой CGI или установить и настроить собственный Web-сервер (например, Apache). Открыв показанную Web-страницу, следует нажать кнопку Выполнить или щелкнуть мышью на ссылке.

В ответ должна быть отображена новая страница с текстом "Это мой первый CGI-сценарий" (рис. 19.3).

Рис. 19.3. Страница, выданная CGI-сценарием cgi_test.cgi

⊚ Все файлы рассмотренного проекта находятся на прилагаемом к книге компакт-диске в папке Chapter_19.

Приложение А

Коды клавиш и их значения

Коды клавиш в десятичном и шестнадцатиричном представлении, а также соответствующие константы и функции Ord перечислены в табл. А.1.

Таблица А.1. Коды клавиш и соответствующие константы

Клавиша Код в десятичном представлении Код в шестнадцатеричном представлении Константа Функция ord
а, А 65 $41 ord('A')
b, B 66 $42 ord('В')
с, С 67 $43 ord('С')
d, D 68 $44 ord('D')
е, Е 69 $45 ord('E')
f, F 70 $46 ord('F')
g, G 71 $47 ord ('G')
h, H 72 $48 ord('H')
i, I 73 $49 ord('I')
j, J 74 $4А ord('J')
k, K 75 $4В ord('K')
l, L 76 $4С ord('L')
m, M 77 $4D ord ('M' )
n, N 78 $4Е ord('N')
o, O 79 $4F ord('O')
p, P 80 $50 ord('P')
q, Q 81 $51 ord('Q')
r, R 82 $52 ord('R')
s, S 83 $53 ord('S')
t,T 84 $54 ord('T')
u, U 85 $55 ord('U')
v, V 86 $56 ord('V')
w, W 87 $57 ord('W')
x, X 88 $58 ord('X')
y, Y 89 $59 ord('Y')
z, Z 90 $5А ord('Z')
0 96 $60 VK_NUMPAD0
1 97 $61 VK_NUMPAD1
2 98 $62 VK_NUMPAD2
3 99 $63 VK_NUMPAD3
4 100 $64 VK_NUMPAD4
5 101 $65 VK_NUMPAD5
6 102 $66 VK_NUMPAD6
7 103 $67 VK_NUMPAD7
8 104 $68 VK_NUMPAD8
9 105 $69 VK_NUMPAD9
* 106 $6А VK_MULTIPLY
+ 107 $6В VK_ADD
109 $6D VK_SUBTRACT
. 110 $6Е VK_DECIMAL
/ 111 $6F VK_DIVIDE
F1 112 $70 VK_F1
F2 113 $71 VK_F2
F3 114 $72 VK_F3
F4 115 $73 VK_F4
F5 116 $74 VK_F5
F6 117 $75 VK_F6
F7 118 $76 VK_F7
F8 119 $77 VK_F8
F9 120 $78 VK_F9
F10 121 $79 VK_F10
пробел 32 $20 VK_SPACE
Backspace 8 $8 VK_BACK
Tab 9 $9 VK_TAB
Enter 13 $0D VK_RETURN
Shift 16 $10 VK_SHIFT
Ctrl 17 $11 VK_CONTROL
Alt 18 $12 VK_MENU
CapsLock 20 $14 VK_CAPITALE
Esc 27 $1В VK_ESCAPE
Insert 45 $2D VK_INSERT
PageUp 33 $21 VK_PRIOR
PageDown 34 $22 VK_NEXT
End 35 $23 VK_END
Home 36 $24 VK_HOME
37 $25 VK_LEFT
38 $26 VK_UP
→  39 $27 VK_RIGHT
40 $28 VK_DOWN
Delete 46 $2Е VK_DELETE
PrintScreen 44 $2С VK_SNAPSHOT
ScrollLock 145 $91 VK_SCROLL
Pause 19 $13 VK_PAUSE
Numlock 144 $90 VK_NUMLOCK

Приложение

Б

Kylix — Delphi для Linux

В 2001 году компания Borland International, разработавшая Delphi, выпустила продукт под названием Kylix, Kylix— это среда быстрой разработки приложений для Linux. Интерфейсом она почти ничем не отличается от привычного Delphi, а язык программирования, который использует Kylix просто не может не радовать — это Object Pascal. Короче говоря, Kylix — это тот же Delphi, только для ОС Linux. Корпорация Borland предлагает два основных варианта Kylix: Kylix Desktop Developer и Kylix Server Developer. Наиболее полной версией по возможностям и функциональности является Kylix Server Developer.

Существует возможность переносить программы из Delphi в Kylix (само собой, если у программ нет привязки к ОС — например, использования функций WinApi). Стоит сказать несколько слов о совместимости и переносимости исходных кодов программ с Delphi в Kylix. Как известно, в Delphi используется библиотека классов VCL. Для Kylix эта библиотека называется CLX (библиотека компонентов для кросс-платформенной разработки). Впрочем, они довольно совместимы, и в VCL присутствует почти полная поддержка библиотеки классов CLX.

Еще одно небольшое отличие заключается в расширении файлов, содержащих описание форм. В Delphi эти файлы имеют расширение *.dfm, а в Kylix — *.xfm. Это не создает особых неудобств, просто в программах следует изменить директиву {$R .dfm} на {$R .xfm}.

В Kylix, в отличие от Delphi, отсутствует возможность работы с базами данных BDE и ADO. Отсутствует поддержка ActiveX, COM и CORBA. Невзирая на все перечисленные недостатки и аспекты несовместимости с Delphi, Kylix является довольно удобной средой программирования. Тот кто программирует на Delphi, сможет перейти на Kylix без особых затруднений.

Приложение В

Справочник по реестру Windows

Ниже описаны интересные ключи системного реестра Windows. Их можно изменять программно или вручную, используя стандартную программу для работы с реестром regedit.exe. Используя эти ключи реестра, можно расширить шаблон программы для настройки Windows, рассмотренный в главе 12.

Общая настройка ПК

Изменение разрешения экрана

Для изменения разрешения экрана (например, на 800×600) следует внести следующие изменения в реестр:

Ключ:

[HKEY_LOCAL_MACHINE\Config\0001\Display\Settings]

Значение ключа:

"Resolution"="800, 600"

Установка задержки перед появлением контекстного меню

Для того чтобы установить задержку появления контекстного меню в 10 миллисекунд следует создать такой ключ:

[HKEY_CURRENT_USER\ControlPanel\desktop]

"MenuShowDelay"="10"

Сокрытие изображение стрелки на ярлыках

Для того чтобы убрать изображение стрелки на ярлыках, создайте следующие два ключа:

[HKEY_CLASSES_ROOT\piffile]

"IsShortcut"=""

[HKEY_CLASSES__ROOT\lnkfile]

"IsShortcut"=""

Поделиться:
Популярные книги

Действуй, дядя Доктор!

Юнина Наталья
Любовные романы:
короткие любовные романы
6.83
рейтинг книги
Действуй, дядя Доктор!

Убийца

Бубела Олег Николаевич
3. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.26
рейтинг книги
Убийца

Краш-тест для майора

Рам Янка
3. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
эро литература
6.25
рейтинг книги
Краш-тест для майора

Найди меня Шерхан

Тоцка Тала
3. Ямпольские-Демидовы
Любовные романы:
современные любовные романы
короткие любовные романы
7.70
рейтинг книги
Найди меня Шерхан

Мастер...

Чащин Валерий
1. Мастер
Фантастика:
героическая фантастика
попаданцы
аниме
6.50
рейтинг книги
Мастер...

Полковник Империи

Ланцов Михаил Алексеевич
3. Безумный Макс
Фантастика:
альтернативная история
6.58
рейтинг книги
Полковник Империи

Протокол "Наследник"

Лисина Александра
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Протокол Наследник

Магия чистых душ

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.40
рейтинг книги
Магия чистых душ

Бальмануг. Невеста

Лашина Полина
5. Мир Десяти
Фантастика:
юмористическое фэнтези
5.00
рейтинг книги
Бальмануг. Невеста

Идеальный мир для Лекаря 15

Сапфир Олег
15. Лекарь
Фантастика:
боевая фантастика
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 15

Газлайтер. Том 16

Володин Григорий Григорьевич
16. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Газлайтер. Том 16

Охота на эмиссара

Катрин Селина
1. Федерация Объединённых Миров
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Охота на эмиссара

Live-rpg. эволюция-5

Кронос Александр
5. Эволюция. Live-RPG
Фантастика:
боевая фантастика
5.69
рейтинг книги
Live-rpg. эволюция-5

Неестественный отбор.Трилогия

Грант Эдгар
Неестественный отбор
Детективы:
триллеры
6.40
рейтинг книги
Неестественный отбор.Трилогия