Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: CeLaYa en 4 Octubre 2007, 22:33 pm



Título: Marcación telefónica
Publicado por: CeLaYa en 4 Octubre 2007, 22:33 pm
Buenas tardes, estoy tratando de hacer una aplicación para marcar números de teléfono, encontre algo de información al respecto:
Código:
Option Explicit
Dim objComunicar

Public Sub marcarNumeroTelefono(numero As String)
  Dim cadConexion As String
  Dim resultado As Integer
  Dim modem As String
   
  On Error GoTo cError
    MousePointer = 11
  Set objComunicar = CreateObject("MSCommLib.MSComm")
 
  'Enviamos la cadena ATDT que equivale a
  'descolgar el modem y marcar el número indicado por tonos
  'ATDP por pulsos
  If opTonos.Value = True Then
    cadConexion$ = "ATDT" + numero + ";" + Chr$(13)
  End If
  If opPulsos.Value = True Then
    cadConexion$ = "ATDP" + numero + ";" + Chr$(13)
  End If
 
  'Indicaremos el puerto COM a utilizar (donde esté conectado el módem)
  objComunicar.CommPort = CInt(txtPuerto.Text)
 
  'En la configuración le indicaremos
    '300 = 300 baudios (velocidad)
    'N = sin paridad
    '8 = 8 bits de datos
    '1 = bit de parada
  objComunicar.Settings = "300,N,8,1"
   
  If Not objComunicar.PortOpen Then objComunicar.PortOpen = True
   
  'Liberamos el búfer de salida
  objComunicar.InBufferCount = 0
   
  'Enviamos los comandos AT con el número al módem
  objComunicar.Output = cadConexion$
   
  'Esperamos a recibir "OK" desde el módem
  Do
    resultado = DoEvents()
    ' Si hay datos en el Buffer los leemos
    If objComunicar.InBufferCount Then
      modem$ = modem$ + objComunicar.Input
      'Comprobamos si los datos leídos son "OK"
      If InStr(modem$, "OK") Then
        'Podemos indicar al usuario que descuelgue el teléfono
        MsgBox "Descuelge su teléfono y pulse 'Aceptar' para cerrar" _
            + " el módem. Podrá continuar la llamada en su teléfono." _
            + Chr(13) + Chr(13) + "Recuerde que si pulsa 'Aceptar' " _
            + "sin descolgar su teléfono se cortará la llamada.", _
            vbInformation + vbOKOnly
        Exit Do
      End If
    End If
  Loop
   
  'Desconectamos el módem, para ello enviamos el comando "ATH"
  objComunicar.Output = "ATH" + Chr$(13)
  'Cerramos el puerto
  objComunicar.PortOpen = False
    MousePointer = 0
cSalir:
  Exit Sub
 
cError:
  MsgBox "Error en la marcación del número de teléfono: " & _
      Err.Number & " - " & Err.Description, vbExclamation
  GoTo cSalir
End Sub


Private Sub cmdColgar_Click()
  On Error GoTo cError
  'Desconectamos el módem, para ello enviamos el comando "ATH"
  objComunicar.Output = "ATH" + Chr$(13)
 
cSalir:
  Exit Sub
 
cError:
  MsgBox "Error en la marcación del número de teléfono: " & _
      Err.Number & " - " & Err.Description, vbExclamation
  GoTo cSalir
End Sub

Private Sub cmdMarcar_Click()
    marcarNumeroTelefono txtNum.Text
End Sub

el problema que tengo, es: ¿Como le hago para que al momento de marcar tome en cuenta las reglas de marcado que estan definidas en el panel de control de windows?  :huh: