Citat:
savkic: > zasto ne zeli poslati poruku? dok u form1 objektu napravim onbutton click i unutra
Na to pitanje odgovor možeš dati samo ti, analiziranjem programa iz debuggera, ja ti mogu ukazati na neke greške koje mogu ali i ne moraju imati uticaja.
Code:
with TSaljiPorukuDretva.Create(true) do
Nije preporučljivo kreirati suspended threadove niti koristiti Resume. Drugo, nema razloga da za svaku poruku praviš poseban thread, napravi thread jednom i koristi ga za sve poruke.
begin
podatakTekst:='1';
IPadresa := '127.0.0.1';
inicijalizacija();
Ne znam šta radi ova metoda ali verovatno pripada novom threadu dok je ti pozivaš iz nekog drugog threada, prebaci poziv u Execute novog threada.
FreeOnTerminate:=true;
Resume;
end;
koristim threadove zato jer saljem poruke na vise razlicitih lokacija. nekako su mi izgledali zgodno, posto se veza sa svakom tom lokacijom ne uspostavi trenutno.
metoda inicijalizacija() samo postavi parametre TCP klijenta i aktivira ga...
Code:
procedure TSaljiPorukuDretva.inicijalizacija();
begin
KlientSoket:=TClientSocket.Create(KlientSoket);
KlientSoket.Host:=ip;
KlientSoket.Port:=30094;
KlientSoket.Active:=true;
end;
evo jos jednom kôd, mozda ce bit citljivije
Code:
procedure TForm1.Button6Click(Sender: TObject);
begin
with TModul.Create(false) do;
with TSaljiPorukuDretva.Create(false) do
begin
podatakTekst:='123';
IPadresa := '127.0.0.1';
inicijalizacija();
FreeOnTerminate:=true;
end;
end;
=========================================
procedure TModul.Execute();
begin
with TSaljiPorukuDretva.Create(false) do
begin
podatakTekst:='1';
IPadresa := '127.0.0.1';
inicijalizacija();
FreeOnTerminate:=true;
end;
repeat
sleep(10);
until Terminated;
end;
=========================================
DRUGI dio metode ( button6.click() ) posalje poruku (tj, druga aplikacija primi poruku '123'), dok prvi dio metode ne posalje (tj, druga aplikacija ne primi poruku '1')
ne znam... odustajem =(
lazem... ne odustajem... ne mogu sada odustat.... pomoc, pliiz =(
[Ovu poruku je menjao buha18 dana 24.05.2010. u 15:46 GMT+1]