Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Stav síť. připojení (Delphi)

Dik.
To už jsem také rozchodil.


procedure TForm1.Timer1Timer(Sender: TObject);
var
State: DWord;
Result: Boolean;
const
Type1 = INTERNET_CONNECTION_MODEM;
Type2 = INTERNET_CONNECTION_LAN;
Type3 = INTERNET_CONNECTION_PROXY;
Type4 = INTERNET_CONNECTION_MODEM_BUSY;
begin
Result:=InternetGetConnectedState(@State, 0);
if Result then
begin
if (State and Type1) = Type1 then Label1.Caption:= 'Modem ';
if (State and Type2) = Type2 then Label1.Caption:= 'LAN ';
if (State and Type3) = Type3 then Label1.Caption:= 'Proxy ';
if (State and Type4) = Type4 then Label1.Caption:= 'Modem busy ';
end
Dá se udělat něco takového na co se ptám na začátku?

Takto si třeba do ComboBoxu vypíšu sit.adaprery.
Umím pak vyčíst MAC, IP,masku,branu,dns atd



function TForm1.zjistiadapter: integer;
var Retvar : integer;
oBindObj : IDispatch;
//oNetAdapters,oNetAdapter,
//oIpAddress,oGateWay,
oWMIService,oSubnetMask : OleVariant;
i,iValue : longword;
oEnum : IEnumvariant;
oCtx : IBindCtx;
oMk : IMoniker;
sFileObj : widestring;
begin
Retvar := 0;
sFileObj := 'winmgmts:\\.\root\cimv2';
oIpAddress := VarArrayCreate([1,1],varOleStr);
OleCheck(CreateBindCtx(0,oCtx));
OleCheck(MkParseDisplayNameEx(oCtx,PWideChar(sFile Obj),i,oMk));
OleCheck(oMk.BindToObject(oCtx,nil,IUnknown,oBindO bj));
oWMIService := oBindObj;
oNetAdapters := oWMIService.ExecQuery('Select * from ' +
'Win32_NetworkAdapterConfiguration ' +
'where IPEnabled=TRUE');
oEnum := IUnknown(oNetAdapters._NewEnum) as IEnumVariant;
while oEnum.Next(1,oNetAdapter,iValue) = 0 do
begin
if ComboBox1.Text = '' then ComboBox1.Text := oNetAdapter.Caption;

ComboBox1.Items.Add (oNetAdapter.Caption);
end;
end;
Dá se udělat něco takového na co se ptám na začátku.

Hlavně mně zajikna jak zjistím že adaprer zrovna nečita IP.
Ono se dá načíst IP adresa s těch adaptéru a nezáleží zda je do sit.zasunut kabl nebo je zakázaná.
Takže stačí vytáhnout IP s lan a wifi a pingat si na ně.
Tak se da poznat přes kterou jedu.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny