Delphi. Учимся на примерах | страница 65
>end;
>var
> Form1: TForm1;
> i: integer;
>implementation
>{$R *.dfm}
>procedure TForm1.bomb();
>begin
> //проверяем, не пустое ли текстовое сообщение
> if txt.Text = '' then txt.Text:= '!';
> //если количество не указано, то отправляем одно сообщение
> if how.Text= '' then how.Text:= '1';
> if ip.Text = '' then ip.Text:= '127.0.0.1'; {если ip-адрес не указан, то отправляем на локальный компьютер}
> //отправляем указанное количество сообщений
> for i:=1 to StrToInt(how.Text) do
> WinExec(PChar('net send ' + ip.Text + '"' + txt.Text + '"'), 0); //отправка сообщения
>end;
>procedure TForm1.Timer1Timer(Sender: TObject);
>var
> h: HWND; //хранит идентификатор окна
>begin
> if not secure.Checked then //если флажок не установлен
> Timer1.Enabled:= False; //отключаем мониторинг
> if secure.Checked then //если флажок установлен
> begin
> //ищем окна с сообщениями
> h:= FindWindow(nil, 'Служба сообщений '); //закрываем все найденные окна
> if h <> 0 then PostMessage(h, WM_QUIT, 0, 0);
> end;
>end;
>procedure TForm1.secureClick(Sender: TObject);
>begin
> if secure.Checked then //если флажок установлен…
> Timer1.Enabled:= True; //…включаем мониторинг
>end;
>procedure TForm1.ipKeyPress(Sender: TObject; var Key: Char);
>begin
> if key = #13 then //если нажата клавиша
> bomb; //отправка сообщения
>end;
>procedure TForm1.Button1Click(Sender: TObject);
>begin
> bomb;
>end;
>end.
⊚ Все файлы проекта и исполняемый файл рассмотренной программы находятся на прилагаемом к книге компакт-диске в папке Chapter 15.
Глава 16
Удаленное управление указателем мыши
Постановка задачи
Разработать программу, которая в точности повторяет на одном компьютере все движения указателя мыши, сделанные на другом компьютере. Компьютеры могут находиться как в локальной сети, так и в Internet.
На самом деле нам придется разработать две программы: первая (назовем ее "Клиент") будет получать координаты указателя на одном компьютере и отправлять их второй программе (назовем ее "Сервер"), которая будет принимать и изменять текущие координаты указателя на присланные клиентом. Данный тип связи называется "клиент-сервер" и для его использования у нас есть все необходимые компоненты на стандартной палитре компонентов Delphi. У "клиента" будет форма с настройками, а "сервер" будет работать незаметно для пользователя. Сначала разработаем клиентскую программу.
Разработка клиентской программы
Разработка формы
Создайте новый проект Delphi. Присвойте свойству Caption формы заголовок Remote Mouse. Разместите на форме компонент Label категории