![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сменить номер порта idUDPclient и idUDPServer в RunTime [D7, WinXP]
ChainikDenis © (2006-05-13 00:00:00)Это вообще возможно или нет?
Я использую широкополосную передачу Host = 255.255.255.255, а вот порт хотел бы дать возможность пользователю изменять. Так вот в событии Form1.onCreate такая фигня: Form1.IdUDPclient1.Port := n; нифига не проходит.
Как быть?
ChainikDenis (2006-06-22 19:20:00) [1]Разобрался!
Вот как порт менять надо:
Form1.IdUDPServer2.Active := False;
Form1.IdUDPServer2.Destroy;
IdUDPServer2 := TIdUDPServer.Create(self);
IdUDPServer2.DefaultPort := p;
IdUDPServer2.BroadcastEnabled := True;
IdUDPServer2.BufferSize := 8192;
IdUDPServer2.Tag := 0;
IdUDPServer2.ThreadedEvent := False;
IdUDPServer2.OnUDPRead := IdUDPServer2UDPRead;
Form1.IdUDPServer2.Active := True;
Иначе никак не выходит....
ChainikDenis (2006-06-22 18:15:00) [2]Опять встал этот же вопрос.
Эксперементальным методом выяснил что у клиента порт все-таки меняеся, а вот у сервера никак.
Меняю так:
procedure TForm1.Button3Click(Sender: TObject);
var p : word;
begin
try
p := StrToInt(Form1.Edit1.Text);
except
ShowMessage('Error!');
Exit;
end;
Form1.IdUDPClient2.Port := p;
end;
procedure TForm1.Button4Click(Sender: TObject);
var p : word;
begin
try
p := StrToInt(Form1.Edit1.Text);
except
ShowMessage('Error!');
Exit;
end;
Form1.IdUDPServer2.DefaultPort := p;
Form1.IdUDPServer2.
end;
Где засада-то? Выручайте плиз!
Dstr (2006-05-13 15:58:00) [3]Form1.IdUDPclient1.Port := PChar(n);
Пробовал?