Zdravím.
Jsem uplny začatečnik a smažim se udělat pinger pomoci knihovny Synapse.
Je to muj první program ve kterem budu použivat knihovnu pas a nevim jak ji do delphi přidat.
Poradite.
Že musim použit knihovnu PingSend už vim.
Jak na to jsem už take našel
A := PingHost('www.google.cz');
Jak však nastavit timeout a packetsize ???
Pinger přes Synapse v Delphi poradite lamě
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: Pinger přes Synapse v Delphi poradite lamě
na timeout môžeš použiť klasický timer z delphi. V synapse som konkrétne ping nepoužíval, tak neviem či povoluje cez nejaký setter nastaviť aj timeout. Treba pozreť v dokumentácii. Rovanko tak packetsize. Mal by to dokázať
Re: Pinger přes Synapse v Delphi poradite lamě
Pozri si zdrojak triedy TPINGSend, tam máš zadefinovany default packetsize (32) aj timeout (5000). Pre jednoduchosť ho zedituj a daj si tam vlastné hodnoty
Re: Pinger přes Synapse v Delphi poradite lamě
A jak ty knihovny přidat do delphi.
Na netu jsem našel že stači překopirovat knihovnu pingsend.pas do adresaře, kde mam uložen muj program a zadat do uses PingSend.
Nějak to nefunguje.
V knihovně PingSend je
Na netu jsem našel že stači překopirovat knihovnu pingsend.pas do adresaře, kde mam uložen muj program a zadat do uses PingSend.
Nějak to nefunguje.
V knihovně PingSend je
Takže knihovna PingSend chce dalšich 6 knihoven.uses
SysUtils,
synsock, blcksock, synautil, synafpc, synaip
Re: Pinger přes Synapse v Delphi poradite lamě
Nakopíruj pingsend.pas do adresára projektu, pridaj pingsend.pas do projektu a do uses tvojho zdrojíku pridaj pingsendLeo napísal:A jak ty knihovny přidat do delphi.
Na netu jsem našel že stači překopirovat knihovnu pingsend.pas do adresaře, kde mam uložen muj program a zadat do uses PingSend.
Nějak to nefunguje.![]()
V knihovně PingSend je
Takže knihovna PingSend chce dalšich 6 knihoven.
Keď pingsend nevidí ostatné uses, nastav v options projektu cestu ku knizniciam alebo ich priamo nakopiruj do adresara projektu
Re: Pinger přes Synapse v Delphi poradite lamě
Tak to funguje ale pokud pingam na něco co laguje tak začne i program lagovat
.
Ve staženem baliku v demo je PingThread.pas
Poradí někdo jak toto použit.
S vláknem jsem už jednou dělal ale s tímto si nevím rady.
Jak si třeba přes to vlakno pingnu na 192.168.1.1
//autoeditácia príspevku (18 Jan 2012, 2:40)
Hm.Tak moc dik
Ve staženem baliku v demo je PingThread.pas
Kód: Vybrať všetko
unit PingThread;
interface
uses Classes, PingSend, IPUtils;
type
PPingResult = ^TPingResult;
TPingResult = Record
IPAdress:String;
Exists:Boolean;
end;
type
TPingThread = class(TThread)
private
{ Private declarations }
protected
procedure Execute; override;
public
PingResult:TPingResult;
Ready:Boolean;
constructor Create(Ping:TPingResult);
end;
implementation
{ TPingThread }
constructor TPingThread.Create(Ping:TPingResult);
begin
PingResult.IPAdress := Ping.IPAdress;
inherited Create(False);
end;
procedure TPingThread.Execute;
var Ping:TPingSend;
begin
Ready := false;
Ping := TPingSend.Create;
Ping.Timeout := 2000;
PingResult.Exists := Ping.Ping(PingResult.IPAdress);
Ping.Free;
Ready := true;
end;
end.
S vláknem jsem už jednou dělal ale s tímto si nevím rady.
Jak si třeba přes to vlakno pingnu na 192.168.1.1
//autoeditácia príspevku (18 Jan 2012, 2:40)
Hm.Tak moc dik