Bojan_N
Čuven
- Učlanjen(a)
- 07.11.2004
- Poruke
- 1,164
- Poena
- 650
Evo ovako, imam jedan prolem vezan za dialup cod za VB. Znaci u pitanju je program koji koristi obican poziv (nema ono sausername i sifrom). Bas su me neki ljudi ovde zamolili da im napravim jedan. To sam uradio ali moj program ima standardnu anomaliju. Ne moze odmah da zove. Tacnije kad pokusam da okrenem telefon cuje se samo signal na telefonu ali ne okrece broj (kao kad je ukljucen "wait for dialtone before dialing"). I tek kada sa windowsovog dialera okrenem neki broj (ne mora cak ni da se okrene broj vec samo je dovoljno da windows "Otvori port"), moj program moze zove kako treba. Ima li neko ideju sta moze biti greska. U pitanju je Visual Basic 6. Moj cod (tacnije skinut sa neta) za pozivanj broja je ispod, ostavio sam i one komentare koji dolaze sa COD-om.
Funkcija koja aktivira pozivanje broja je:
Ako neko moze nek pomogne, stvarno vec godinama koristim ovaj kod. Skinuo sam jos nekoliko ali svi rade na istom principu i ne vredi mi. Ne mogu da nadjem ni jedan sto radi.
Hvala u napred.
Private Sub dial(Number As String)
On Error GoTo greska
Dim DialString As String, FromModem As String, dummy As String
' AT is the Hayes compatible ATTENTION command and is required to send commands to the modem.
' DT means "Dial Tone." The Dial command uses touch tones, as opposed to pulse (DP = Dial Pulse).
' Numbers is the phone number being dialed.
' A semicolon tells the modem to return to command mode after dialing (important).
' A carriage return, vbCr, is required when sending commands to the modem.
DialString = "ATDT" + Number + ";" + vbCr
' Communications port settings.
' Assuming that a mouse is attached to COM1, CommPort is set to 2
MSComm1.CommPort = coms.ListIndex + 1
MSComm1.Settings = "9600,N,8,1"
' Open the communications port.
On Error Resume Next
MSComm1.PortOpen = True
If Err Then
MsgBox "COM" & MSComm1.CommPort & ": nije dostupan. promeni komp port u podesavanjima."
Exit Sub
End If
' Flush the input buffer.
MSComm1.InBufferCount = 0
' Dial the number.
MSComm1.Output = DialString
' Wait for "OK" to come back from the modem.
Do
dummy = DoEvents()
' If there is data in the buffer, then read it.
If MSComm1.InBufferCount Then
FromModem = FromModem + MSComm1.Input
' Check for "OK".
If InStr(FromModem, "OK") Then
' Notify the user to pick up the phone.
Beep
'MsgBox "Podigni slusalicu pa klikni OK"
'Exit Do
End If
End If
' Did the user choose Cancel?
If CancelFlag Then
CancelFlag = False
Exit Do
End If
Loop
' Disconnect the modem.
MSComm1.Output = "ATH" + vbCr
' Close the port.
MSComm1.PortOpen = False
Exit Sub
greska:
MsgBox "Greska!!!. Razlog: " & Error
End Sub
Funkcija koja aktivira pozivanje broja je:
Private Sub cmddial_Click()
Dim Number As String, Temp As String
' Get the number to dial.
Number = Text1.Text
' Dial the selected phone number.
dial Number
lblMsg = Temp
End Sub
Ako neko moze nek pomogne, stvarno vec godinama koristim ovaj kod. Skinuo sam jos nekoliko ali svi rade na istom principu i ne vredi mi. Ne mogu da nadjem ni jedan sto radi.
Hvala u napred.
Poslednja izmena: