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

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; 
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (10 оценок, среднее: 5,00 из 5)
Загрузка...
Добавить комментарий