скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как определить состояние модема под Win32




Пришел Новый Русский в компьютерный магазин и спрашивает:
- Братан, кто у вас тут самый крутой? Процессор?
- Нет.
- А может это...
Материнская плата??
- Нет.
- Хммм... Блин... А кто же???
- Модем.
- Он наверно такой умный???
- Да нет.
- А чеее тогда?
- У него такие связи!


procedure TForm1.Button1Click(Sender: TObject);
var
  CommPort : string;
  hCommFile : THandle;
  ModemStat : DWord;
begin
  CommPort := 'COM2';

  {Open the comm port}
  hCommFile := CreateFile(PChar(CommPort), GENERIC_READ, 0, nil,
  OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
  if hCommFile = INVALID_HANDLE_VALUE then
  begin
    ShowMessage('Unable to open '+ CommPort);
    exit;
  end;

  {Get the Modem Status}
  if GetCommModemStatus(hCommFile, ModemStat) <> false then
  begin
    if ModemStat and MS_CTS_ON <> 0 then
      ShowMessage('The CTS (clear-to-send) is on.');
    if ModemStat and MS_DSR_ON <> 0 then
      ShowMessage('The DSR (data-set-ready) is on.');
    if ModemStat and MS_RING_ON <> 0 then
      ShowMessage('The ring indicator is on.');
    if ModemStat and MS_RLSD_ON <> 0 then
      ShowMessage('The RLSD (receive-line-signal-detect) is on.');
  end;

  {Close the comm port}
  CloseHandle(hCommFile);
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook