Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.13;
Скачать: CL | DM;

Вниз

Определение изменений устройств Plug&Play   Найти похожие ветки 

 
SYNthetic   (2002-11-23 21:30) [0]

Мастера, помогоите плиз, в FAQ надыбал такой исходник для обределения изменений устройств в системе:
type
TForm1 = class(TForm)
Button1: TButton;
private
{ Private declarations }
procedure WMDeviceChange(var Message: TMessage);
message WM_DEVICECHANGE;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
const DBT_DEVICEARRIVAL = $8000;
const DBT_DEVICEQUERYREMOVE = $8001;
const DBT_DEVICEQUERYREMOVEFAILED = $8002;
const DBT_DEVICEREMOVEPENDING = $8003;
const DBT_DEVICEREMOVECOMPLETE = $8004;
const DBT_DEVICETYPESPECIFIC = $8005;
const DBT_CONFIGCHANGED = $0018;
procedure TForm1.WMDeviceChange(var Message: TMessage);
var
s : string;
begin
{Do Something here}
case Message.wParam of
DBT_DEVICEARRIVAL :
s := "A device has been inserted and is now available";
DBT_DEVICEQUERYREMOVE: begin
s := "Permission to remove a device is requested";
ShowMessage(s);
{True grants premission}
Message.Result := integer(true);
exit;
end;
DBT_DEVICEQUERYREMOVEFAILED :
s := "Request to remove a device has been canceled";
DBT_DEVICEREMOVEPENDING :
s := "Device is about to be removed";
DBT_DEVICEREMOVECOMPLETE :
s := "Device has been removed";
DBT_DEVICETYPESPECIFIC :
s := "Device-specific event";
DBT_CONFIGCHANGED :
s:= "Current configuration has changed"
else s := "Unknown Device Message";
end;
ShowMessage(s);
inherited;
end;
Подскажите только как пользоваться этой процедцрой? Нужно просто чтобы прога определяла внешний модем, если при загрузке ОС он был выключен.


 
Morfein   (2002-11-25 21:29) [1]

Гы )))
Что значит, как ей пользоваться??
Это ж получился обработчик сообщения WM_DEVICECHANGE...
Вот эта процедура(Tform1.WMDeviceChange) и вызовется, когда
система пошлёт твоему окну сообщение WM_DEVICECHANGE!
А пошлёт или нет - это уже другой вопрос...

Если хочешь определить модем, попробуй функцию RasEnumDevices() из wininet.dll. Она выдаёт список сетевых девайсов... Мож для твоего случая прокатит, попробуй...



Страницы: 1 вся ветка

Текущий архив: 2003.01.13;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.008 c
1-37000
3asys
2002-12-28 11:14
2003.01.13
Вывод на печать из TRichEdit с первой страницы


1-37126
Stas_a
2003-01-04 15:05
2003.01.13
Перехват OnCLick в компоненте.


6-37243
Aspirin A.
2002-11-02 18:09
2003.01.13
Передать скрипту данные методом post


3-36924
13-ый
2002-12-17 10:42
2003.01.13
Деревья на основе БД


1-37014
Miv
2003-01-01 16:04
2003.01.13
Как с помощью мышки в TlistBox е можно строчки местами менять...?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский