Home

Page 251
Page 251
background image

 Глава 5

Теперь рассмотрим новые функции, которые мы использовали в этом при-

мере. Первая — это

 она определяет имя локальной машины.

У функции есть два параметра:

 буфер, в который будет занесено имя машины;

 размер выделенной под буфер памяти.

Следующая функция —

 она определяет IP-адрес компьютера

по его имени. В качестве единственного параметра нужно передать имя

компьютера, адрес которого нужно узнать. Мы передаем буфер, в котором

находится имя локальной машины, которое мы предварительно выяснили

с помощью функции GetHostName. Результатом выполнения функции будет

Массив ИЗ Структур ТИПа

Почему при определении IP-адреса мы получаем массив из структур? Это

потому, что на компьютере может быть установлено несколько сетевых

карт; например, у меня на работе на одном из серверов было установлено

две сетевые карты на 10 и 100

 Я использовал их для разделения

двух сетей с разной скоростью и разной топологией.

Вот теперь самое интересное — вывод результата:

 (i +  1 ) ) )

Здесь использована функция FindComponent, которая ищет компонент на

форме по имени. В качестве параметра нужно передать имя компонента,

например

 Но можно поступить хитрее и передать имя Edit плюс ин-

декс, приведенный к строковому типу

 В итоге на первом

этапе мы будем искать FindComponent

 на втором этапе

 и так далее.

НаЙДенНЫЙ С ПОМОЩЬЮ ФУНКЦИИ FindComponent КОМПОНенТ

 ПрИВеС-

ТИ К ТИПУ  T E d i t С ПОМОЩЬЮ  T E d i t ( FindComponent (

 (i + 1) ) ) .

А далее используем всю эту конструкцию, как простой Tedit-компонент:

Рассмотрим еще пример. Допустим, у вас стоит пять компонентов CheckBox

с именами

 и так далее. Чтобы перебрать

все эти компоненты и узнать, какой из них выделен, нужно сделать так:

for

 to 5 do

if

 then

begin

//i-й компонент CheckBox выделен

end;

Ну и напоследок идет функция  i n e t n t o a . Она превращает переданный ей
IP-адрес в строку. В качестве единственного параметра передаем адрес, а на
выходе получаем его строковое представление.
На компакт-диске в директории

 5\GetIP вы можете уви-

деть пример этой программы.


Copyright © 2020 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.