Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Мастера DELPHI. Новости мира компонент, FAQ, статьи...


Информационный Канал Subscribe.Ru

Ежедневная рассылка сайта Мастера DELPHI

DELPHIMASTER.ru

Выпуск от 20.04.03 09:04

Ghost Installer - достойный инсталлятор для качественных сетапов. Весь спектр возможностей, быстрота и удобство.
Кое-что из нашей кладовки   |x|
  • Оптимизационные методы Neft evstrstep@mail.ru   (20.04.03 00:32)
    Модули по оптимизационным методам
    Может пригодиться студентам которые на программистов учатся, это заставляют учить
    »»» Скачать: исходные тексты (6кб)
  • БАЗА™ 0.6 alpha K_O_T K_O_T@TUT.BY   (18.04.03 21:10)
    База для систематизации бесконечного количества исходников, документов, компонент, книг, да и просто любых файлов:)
    Что нового:
    *Полностью переписан движок (с нуля)
    *Изменен UI (чуть-чуть)
    *Добавлено порядком новых возможностей, но многие скрыты в этой версии.
    *Реализовано много фич, предложенных мне по мылу.
    Пожалуйста! Кто имел опыт работы с интерефейсом IContextMenu, напишите мне на мыло. Дело есть. Очень Важно!
    »»» Скачать: исходные тексты демонстрационный EXE файл (363кб) посмотреть скриншот
Лучшее из нашего FAQ   |x|
Как проверить соединение с интернетом.
Часто приложению, которое работает в интернете, требуется знать, подключён пользователь к интернету или нет. Предлагаю Вам довольно гибкое решение этого вопроса.
Совместимость: Delphi 3.x (или выше)

Для работы Вам необходимо импортировать функцию InetIsOffline из URL.DLL:

function InetIsOffline(Flag: Integer): Boolean; stdcall; external 'URL.DLL';

а затем поместить в программу простой вызов функции для проверки статуса соединения:

if InetIsOffline(0) then
  ShowMessage('This computer is not connected to Internet!')
else
  ShowMessage(You are connected to Internet!');

Эта функция возвращает TRUE если соединение с интернетов отсутствует, или FALSE если соединение установлено.

Замечание:
параметр Flag игнорируется, соответственно используем ноль.
Эта DLL обычно проинсталлирована на большинстве к! омпьютеров. Она также существует в Win98 либо поставляется с Internet Explorer 4 или выше, Office 97 и т.д..
Более подробно можно прочитать в MSDN.
Оригинал: http://msdn.microsoft.com/library/psdk/shellcc/shell/Functions/InetIsOffline.htm

Автор: Vitaly Zayko (zayko@vitsoftware.com)
Источник: http://www.sources.ru/delphi/

Комментарий от Ефремова Александра (aleks@vilgus.kamchatka.ru)
Зашел на официальный сайт Microsoft по MSDN где черным по белому написано, что функция эта выдает false не только, когда комп подключен к
интернету, но и когда ЕЩЕ НЕ БЫЛО ПОПЫТОК подключения (or if no attempt has yet been made to connect to the Internet). Ну и скажите мне теперь, какой у этой функции тогда смысл ? Да, умом Microsoft не
понять (к со! жалению). Помогите найти нормальный способ проверки подключения к инет (online).

Merlin: самым нормальны, мне кажется, пинговать какой-то адрес в интернете, лучше два :) но это тоже связано с проблемой, что может запускаться установка связи, когда не надо.

Комментарий от Dmitry Shkil (Mitya@bigmir.net) ShkilSoft

interface
uses
 Windows;
{ Flags for InternetGetConnectedState }
const
 INTERNET_CONNECTION_MODEM      = 1;
 INTERNET_CONNECTION_LAN        = 2;
 INTERNET_CONNECTION_PROXY      = 4;
 INTERNET_CONNECTION_MODEM_BUSY = 8;
const
 winetdll = 'wininet.dll';
function InternetGetConnectedState(lpdwFlags: LPDWORD; dwReserved:
DWORD):BOOL; stdcall; external winetdll name 'InternetGetConnectedState';
implementation

function InternetConnected: Boolean;
var
 dwConnectionTypes: D! WORD;
begin
 dwConnectionTypes :=
   INTERNET_CONNECTION_MODEM +
   INTERNET_CONNECTION_LAN +
   INTERNET_CONNECTION_PROXY;
 Result := InternetGetConnectedState(@dwConnectionTypes, 0);
end;

Хотя возможно через RAS API. Компоненты можно поискать на www.torry.net


Kondakov (owl@conecs.lviv.ua)
Я попробовал это на основе предложения Dmitriya Работает вроде. . Через Button  or Activate

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

const IC_Modem=1;
IC_LAN= 2;
IC_PROXY=3;
IC_MODEM_BUSY=4;
winetdll='wininet.dll';

type
TForm1 = class(TForm)
Button1: TButton;

procedure CheckState(Sender: TObject);
end;

var
Form1: TForm1;

implementation

function Interne! tGetConnectedState(lpdwFlags:LPDWORD; dwReserved: DWORD): BOOLEAN; stdcall; external winetdll name
'InternetGetConnectedState';

{$R *.DFM}

procedure TForm1.CheckState(Sender: TObject);
var dwConnectionTypes: DWORD;
begin
dwConnectionTypes:=IC_MODEM+IC_LAN+IC_PROXY;
if InternetGetConnectedState(@dwConnectionTypes,0) then ShowMessage('Youa connected')
else ShowMessage('No Connection');
end;

end.



Комментарий от "Vladimir Artemov"
Из MSDN:
You cannot rely solely on the fact that InternetGetConnectedState returning TRUE means that you have a valid active Internet connection. It is impossible for InternetGetConnectedState to determine if the entire connection to the Internet is functioning without sending a request to a server. This is why you need to send a request to determine if you are really connected or not. You can b! e assured however that if InternetGetConnectedState returns TRUE, that attempting your connection will NOT cause you to be prompted to connect to the default Internet Service Provider.

Ну не получится таким образом ДОСТОВЕРНО проверить! Надо либо подключаться, либо пинговать.

»»» Прислать свои комментарии

Обсуждается в конференциях   |x|
  • Защита софта
    Дарова программеры... У меня такой вопросик, который я думаю интересовал каждого, кто хоть раз писал программы на заказ:...
  • SQL Builder
    Не то, что бы проблема, интересно вдруг стало. А можно ли пользоваться SQL Builder'ом самому вне Delphi. Отыскать я его ...
  • Как связать расширение с прогой?
    У меня плеер, нужно, чтобы медиа открывалось через него. Как в Winamp`е - открылось и заиграло...
  • Доступ к папке с паролем
    Суть. В локальной сети имеется расшареный ресурс с паролем на запись. Как реализовать запись в эту папку, скажем, ...
  • Опять о Ctrl+Alt+Del, Alt+Tab...
    Скажем в Win2k блокировать процесы которые возникають на нажатие этих клавиш просто - SystemParametersInfo() А вот под ...
  • Слежение за портами
    Чем можно следить за состоянием портов (COM, LPT, USB, и т.д.)?
  • Можно ли отобразить данные в DBGrid в одной строке 2 строки ?
    Можно ли отобразить данные в DBGrid в одной строке 2 строки ? Или может быть есть другой компанент в котором можно это ...
У нас большой выбор статей   |x|
Создание генераторов и триггеров в InterBase
В данной статье я опишу реализацию небольшой утилиты для InterBase, которая создает генераторы, автоматически вызываемые из триггеров. На создание такой утилиты меня подвигло то, что я не нашел никакого средства для этого, а создавать генераторы руками мне неудобно, да и слишком много времени это отнимает.
Новинки книжного рынка   |x|
Delphi 6 в подлиннике
Delphi 6 - новая версия популярной системы быстрой разработки приложений. В книге описываются инструментальные средства среды Delphi 6, приводятся основы языка программирования Object Pascal и рассматриваются компоненты, свойства, методы и события, необходимые для разработки широкого спектра программ. Особое внимание уделяется работе с базами данных. Показывается использование как локальных, так и удаленных баз данных, включая создание многоуровневых информационных систем и публикацию результатов запросов через Интернет. Благодаря большому количеству затронутых тем, подробному изложению и многочисленным примерам книга будет полезна как начинающим, так и опытным программистам.
Автор: Гофман В.
Другие сайты о DELPHI   |x|
Development и Дельфи
Крупный сайт о программировании на Дельфи и Паскаль. Обучение программированию с нуля. Большая коллекция бесплатных компонентов и программ, а также море авторских статей по программированию!

» Оценка сайта: 3
Опрос населения :)
Новый журнал для программистов "RSDN Magazine". Готовы ли вы подписаться на него?
»»» Да, на сколько возможно
»»» Да, на 6 месяцев
»»» Да, на 3 месяца
»»» Да, на 1 месяц
»»» Нет, не готов
»»» Не знаю
Для души

Хокку дня
Дверь открываю
В зной груди
И вижу там себя.

Афоризмы
Революцию делают не голодные люди, а сытые, которых три дня не кормили (Некий мичиганский политик)

Фраза дня
Скажи мне кто я, и я скажу тебе кто ты.

Дурацкие законы (информация предоставлена сайтом kurilka.com)
В Огайо (США) полиция не имеет права производить аресты по воскресеньям и на День независимости.
В Англии под угрозой крупного штрафа запрещается мочиться на публике. Единственное исключение, если мужчина делает это на заднее колесо своей машины- его правая рука при этом должна оставаться на капоте автомобиля. (Видимо, чтобы у прохожих создавалось впечатление, будто джентельмен зашел за машину просто полюбоваться природой)

И на закуску коротенький анекдот
- Знаете, к нам каждое лето приезжает теща... Международного масштаба в этом событии, конечно, нет, но элементы терроризма присутствуют.

Фотоприколы.
Начните день с хорошего настроения!
http://delphi.mastak.ru/cgi-bin/prikol.pl?id=859


На этом позвольте откланяться и пожелать вам удачного дня.
Искренне ваш, Алексей (delphi@mastak.ru)

Добро пожаловать на сайт -= Мастера DELPHI =- 


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное