Ligação telefonica pelo modem

Delphi

29/08/2009

Buenas...

Encontrei um codigo aqui no forum para fazer discagem pelo modem ate ai tudo bem fiz um teste aki ele realmente disca para o numero desejado mais o fone de ovido e o microfone nao deveria funcionar ?



var 
  Form1: TForm1; 
  hCommFile: THandle; 
  Status: LongBool; 
  NumberWritten: DWORD; 
  Buf : array [0..1023] of Byte; 
  s : string; 
begin 
if (combobox1.text <> ´´) and (edit1.text <> ´´) then 
 begin 
  s := Combobox1.text;               //Abre a porta de comunicação 
  hCommFile:= CreateFile( PChar(s), GENERIC_WRITE, 
                                0, //not shared 
                                nil, //no security 
                                OPEN_EXISTING, 
                                FILE_ATTRIBUTE_NORMAL, 
                                0  ); 

  if hCommFile = INVALID_HANDLE_VALUE then 
   begin 
    memo1.lines.clear; 
    memo1.lines.add(´Não foi possível abrir a porta selecionada.´); 
    memo1.lines.add(´Discagem não efetuada´); 
    CloseHandle(hCommFile); 
   end 
  else 
   begin 
    memo1.lines.clear; 
    memo1.lines.add(´Discando...´); 

    if radiobutton1.checked then            //Cria a string de comando 
     s := ´ATDT´ 
    else 
     s := ´ATDP´; 

    s := s + edit1.text + #1310; 
    memo1.lines.add(s); 
    NumberWritten:=0;               //Envia a String de Comando 
    Status:=WriteFile( hCommFile,PChar(s)[0], 
                       Length(s), 
                       NumberWritten, 
                       nil); 
    memo1.lines.add(´Aguardando Atendimento ...´); 
    Application.MessageBox(´Retire o telefone do gancho e clique OK para desligar o modem.´,´Atenção´ 
                          ,+MB_Ok); 
    WriteFile(hCommFile,´ATH´,5,NumberWritten,nil);      //Desconecta a ligação (Hangup) 
    CloseHandle(hCommFile);                                //Fecha a porta de Comunicação 
    memo1.lines.add(´Modem Desconectado.´#1310); 
   end; 
 end; 
end;



Mysys

Mysys

Curtidas 0
POSTAR