Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Автоматически дозвониться по интернет соединению по умолчанию

Delphi , Интернет и Сети , Dial-up

Автоматически дозвониться по интернет соединению по умолчанию

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

uses
   WinInet;

 // Causes the modem to automatically dial the default Internet connection. 
procedure TForm1.Button1Click(Sender: TObject);
 var
   dwConnectionTypes: DWORD;
 begin
   dwConnectionTypes := INTERNET_CONNECTION_MODEM + INTERNET_CONNECTION_LAN +
     INTERNET_CONNECTION_PROXY;
   if not InternetGetConnectedState(@dwConnectionTypes, 0) then
     // not connected 
    if not InternetAutodial(INTERNET_AUTODIAL_FORCE_ONLINE or
       INTERNET_AUTODIAL_FORCE_UNATTENDED, 0) then
     begin
       // error 
    end;
 end;


 // hangup the default Internet connection. 
procedure TForm1.Button2Click(Sender: TObject);
 var
   dwConnectionTypes: DWORD;
 begin
   dwConnectionTypes := INTERNET_CONNECTION_MODEM + INTERNET_CONNECTION_LAN +
     INTERNET_CONNECTION_PROXY;
   if InternetGetConnectedState(@dwConnectionTypes, 0) then
     // connected 
    InternetAutodialHangup(0);
 end;

Программный код на языке Delphi, использующий API WinInet для управления интернет-соединениями. Код состоит из двух процедур:

  1. Button1Click: эта процедура автоматически дозванивает по умолчанию интернет-соединение.
  2. Button2Click: эта процедура отключает по умолчанию интернет-соединение.

Разбивка каждого шага:

Button1Click

  • dwConnectionTypes устанавливается в сочетание констант, представляющих различные типы соединений (модем, LAN, прокси).
  • InternetGetConnectedState проверяет, есть ли активные соединения. Если нет, то дозванивает по умолчанию соединение.
  • InternetAutodial пытается установить соединение с указанными параметрами (force online или unattended). Если попытка неудачна, возникает ошибка.

Button2Click

  • dwConnectionTypes снова устанавливается в то же сочетание констант, что и в Button1Click.
  • InternetGetConnectedState проверяет, есть ли активные соединения. Если есть, то отключает соединение.
  • InternetAutodialHangup отправляет запрос на отключение активного соединения.

Примечания:

  • Константы INTERNET_XXX определены API WinInet и представляют различные типы интернет-соединений (например, модем, LAN, прокси).
  • Функция InternetGetConnectedState возвращает TRUE, если есть активные соединения.
  • Функция InternetAutodial пытается установить соединение с указанными параметрами.
  • Функция InternetAutodialHangup отправляет запрос на отключение активного соединения.

Альтернативное решение может быть использование более современного и платформо-независимого подхода, такого как библиотека Indy или другие библиотеки для работы с интернет-соединениями. Однако данный код специфичен для Delphi и использует API WinInet, который может не быть совместимым с всеми платформами или архитектурами.

Автоматически дозвониться по интернет соединению по умолчанию с помощью функции InternetAutodial и разъединить соединение с помощью функции InternetAutodialHangup в Delphi при помощи библиотеки WinInet.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Dial-up ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-15 22:59:45/0.0033948421478271/0