Пример работы с маил-слотами
Пример работы с маил-слотами
Пример работы с маил-слотами //Открываем слот, и берем имя слота ... procedure TForm1.OpenMailSlot; begin if fMailSlot.Opened then fMailSlot.Close; fMailSlot.SlotName := Trim(edtSlotName.Text); fMailSlot.Open; end; //Создаем слот, и приемник ... procedure TForm1.FormCreate(Sender: TObject); begin fMailSlot := TMailSlot.Create; fMailSlot.OnNewMessage := OnRecieveMsg; end; //Уничтожаем созданый слот ... procedure TForm1.FormDestroy(Sender: TObject); begin fMailSlot.Free; end; //Выполняем процедуру открытия слота ... procedure TForm1.actConnectExecute(Sender: TObject); begin OpenMailSlot; end; //Принимаем сообщение от удаленного слота ... procedure TForm1.SendMessage(const RemoteHost, SlotName, Msg: String); begin if fMailSlot.Opened then begin fMailSlot.SendMessage(RemoteHost, SlotName, Msg); end; end; //Добовляем в редактор сообщение от удаленного слота... procedure TForm1.OnRecieveMsg(Sender: TObject; Message: String); begin memLog.Lines.Add(Message); end; //Отправляем сообщение удаленному слоту ... procedure TForm1.actSendExecute(Sender: TObject); begin SendMessage(Trim(edtRemoteHost.Text), Trim(edtRemoteSlot.Text), Trim(edtMsg.Text)); end;