Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Докопаться до окна соединения


Автор: Cashey 15.3.2004, 17:22
Всем привет!
Если вы читаете эти строки, это значит (сейчас я вас обрадую) у вас есть выход в интернет smile.gif Поздравляю.
А если у вас есть выход в интернет, значит вы к нему как-то законнективаетесь, правильно? Во-о, а раз вы к нему законнективаетесь, значит у вас в левом нижнем углу (там где часы) есть значок соединения, если на него два раза щелкнуть мышкой, то еще появляется сведения о скорости и времени соединения.
Так вот очень хотелось бы программно докопаться до этого окошка и получить содержащююся в нем инфу, но самое главное, это опредилить есть оно вообще или нет. Короче говоря, хочу разработать именно такой способ проверки наличия соединения с интернетом. А если кто подскажет как докопаться до этого окошка на удаленном компьютере Админа, у которого стоит XP, тот меня вообще осчастливит.
Спасибо.

Автор: <Spawn> 15.3.2004, 18:21
А почему бы не воспользоваться InternetGetConnectedState:

Код
procedure TForm1.Button1Click(Sender: TObject);
var
 Flags:DWORD;
begin
Flags:= 0;
ListBox1.Items.Clear;
if InternetGetConnectedState(@Flags, 0) then
begin
  with ListBox1.Items do
  begin
    if (Flags and INTERNET_CONNECTION_LAN) <> 0 then
      Add('Local system uses a local area network to connect to the Internet.');
    if (Flags and INTERNET_CONNECTION_MODEM) <> 0 then
      Add('Local system uses a modem to connect to the Internet.');
    if (Flags and INTERNET_CONNECTION_PROXY) <> 0 then
      Add('Local system uses a proxy server to connect to the Internet.');
    if (Flags and INTERNET_CONNECTION_MODEM_BUSY) <> 0 then
      Add('No longer used.');
  end;
end
else
  ListBox1.Items.Add('Disconnected');
end;

Автор: Cashey 16.3.2004, 10:29
А зачем изобретать велосипед? В виндоусе уже есть признак соединения, так зачем проводить еще какие-то проверки?
<Spawn>, а где находится InternetGetConnectedState, что-то я такое не нашел?

Автор: <Spawn> 16.3.2004, 16:56
WinInet

Автор: Cashey 17.3.2004, 10:11
Это работает только если выходишь в интернет с того компьютера на котором будет стоять программа с этим кодом. В случае, если выход в интернет осуществляется через модем, а я выхожу после этого уже по локалке, то это не работает

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)