寫FAX 傳真的程式(編號:8591)

有沒有人會寫FAX的程式
我寫出來的可以和傳真機連線
但不會送出資料
VERSION 5.00
Object = "{648A5603-2C6E-101B-82B6-000000000014}#1.1#0"; "MSCOMM32.OCX"
Begin VB.Form Form1
Caption     =  "Form1"
  ClientHeight  =  1395
  ClientLeft   =  60
  ClientTop    =  345
  ClientWidth   =  5595
  LinkTopic    =  "Form1"
  ScaleHeight   =  1395
  ScaleWidth   =  5595
  StartUpPosition =  3 '系統預設值
  Begin VB.Frame Frame2
   Caption     =  "Frame2"
   Height     =  615
   Left      =  0
   TabIndex    =  4
   Top       =  720
   Width      =  5535
   Begin VB.TextBox T
     Height     =  270
     Left      =  120
     TabIndex    =  5
     Text      =  "Text1"
     Top       =  240
     Width      =  5295
   End
  End
  Begin VB.Frame Frame1
   Caption     =  "通訊連接埠"
   Height     =  615
   Left      =  2040
   TabIndex    =  2
   Top       =  0
   Width      =  1335
   Begin VB.ComboBox Combo1
     Height     =  300
     ItemData    =  "Form1.frx":0000
     Left      =  120
     List      =  "Form1.frx":000A
     TabIndex    =  3
     Top       =  240
     Width      =  1095
   End
  End
  Begin MSCommLib.MSComm MSComm1
   Left      =  5040
   Top       =  120
   _ExtentX    =  1005
   _ExtentY    =  1005
   _Version    =  393216
   DTREnable    =  -1 'True
   Handshaking   =  2
   RTSEnable    =  -1 'True
  End
  Begin VB.CommandButton Fax
   Caption     =  "開始傳真"
   Height     =  375
   Left      =  4200
   TabIndex    =  1
   Top       =  120
   Width      =  855
  End
  Begin VB.TextBox FaxTel
   BeginProperty Font
     Name      =  "新細明體"
     Size      =  15.75
     Charset     =  136
     Weight     =  400
     Underline    =  0  'False
     Italic     =  0  'False
     Strikethrough  =  0  'False
   EndProperty
   Height     =  375
   Left      =  120
   TabIndex    =  0
   Text      =  "25115053"
   Top       =  120
   Width      =  1815
  End
  Begin VB.Shape Shape1
   FillColor    =  &H000000C0&
   FillStyle    =  0 '實心
   Height     =  375
   Left      =  3600
   Shape      =  3 '圓形
   Top       =  120
   Width      =  495
  End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Combo1_Change()
MSComm1.CommPort = Combo1.Visible + 1
End Sub
Private Sub Fax_Click()
Dim Out(10240) As Byte
Out(0) = &HFF&
For FORS = 1 To 10239
Out(FORS) = 15
Next
Fax.Enabled = False
'MSComm1.Output = "AT" & vbCr
Shape1.FillColor = &HFF00&
'MSComm1.Output = "ATH1" & vbCr

'********************************************************
'&F 載入出廠之配置值
'S0 鈴聲次數進入應答模式 0=關閉
'E0 不要顯示鍵入的指令
'V1 以文字方式顯示結果碼
'Q0 使用結果碼 *AT&FS0=0E0V1Q0
MSComm1.Output = "AT&FS0=0E0V1Q0" & vbCr
DoEvents
T.Text = T.Text & MSComm1.Input
'
MSComm1.Output = "AT" & vbCr
DoEvents
T.Text = T.Text & MSComm1.Input
'I3 顯示晶片組名稱
MSComm1.Output = "ATI3" & vbCr
DoEvents
T.Text = T.Text & MSComm1.Input
'S7 等待遠方載波的時間
'&D3 當DTR 由ON轉OFF則重置數據機
'&K4 開始 XON/XOFF ATS7=255&D3&K4
MSComm1.Output = "ATS7=255&D1" & vbCr
DoEvents
T.Text = T.Text & MSComm1.Input
'X4 偵測有無撥號音
'S8 , 要等待的時間
'M1 撥號時喇叭開著 直到偵測到載波
'L1 音量 3高
MSComm1.Output = "ATX4S8=2M1L3" & vbCr
DoEvents
T.Text = T.Text & MSComm1.Input
'+F
'
MSComm1.Output = "AT+FCLASS=1H1" & vbCr
DoEvents
T.Text = T.Text & MSComm1.Input
'
MSComm1.Output = "ATH" & vbCr
DoEvents
T.Text = T.Text & MSComm1.Input
'******************************************************************
'啟動數據機,並撥電話號碼。
'MSComm1.Output = "ATDT25115053" & vbCr
'MSComm1.Output = "ATDT" & FaxTel.Text & vbCr
'設定為傳真模式 V.29 (9600 BPS  FAX)
'MSComm1.Output = "+MS=V29,1,0,0" & vbCr
'DoEvents
'MSComm1.Output = "ATH1" & vbCr
'MSComm1.Output = "AT" & vbCr
'DoEvents
'T.Text = MSComm1.Input
'T.Text = ""
MSComm1.Output = "ATDT 25115053" & vbCrLf
'「AT」指令初始化連接,「D」進行撥號,[T」指定使用音調 (而不是脈衝)。
' 等待資料傳回到序列連接埠
Do
DoEvents
  TT$ = MSComm1.Input
  Exit Do
Loop Until InStr(TT$, "CONNECT" & vbCrLf)  ' 從序列連接埠讀取 "OK" 回應資料
TT$ = ""
Do
DoEvents
  TT$ = TT$ & MSComm1.Input
  Exit Do
Loop Until InStr(Buffer$, "OK" & vbCrLf)  '接通
'If InStr(T.Text, "NO") Then
'  MsgBox ("失敗")
'  GoTo erring
'End If
'Buffer$ = ""
'輸出到一個終端時必須指定 Return 鍵 (vbCr)。輸出到位元組陣列時,不需要再加一個 Return 字元。
'如果指令被正確處理,傳回的結果碼將是「OK」。檢查結果碼即可確定指令是否被正確處理。
'This entry is in "hex display mode" (see below).
'這個加入是在"16位元展示模示"(看以下)
' Log indicates one byte, 0xff , was read.
' 指示一個字元,0xff,他讀取
'In this case it is the first byte of the
'
' DIS frame from the remote machine.
'在遠方的機械
'傳送位元組陣列資料
MSComm1.Output = TT$ & vbCr
DoEvents
For FORS = 0 To 32000
MSComm1.Output = Out
  DoEvents
Next
'
'如前面提到的,每傳送一行都必須以 Return 鍵 (vbCr)結束。
'在上例中,Out 被定義為位元組陣列變數:Dim Out() As Byte。假如它是字串變數,
'則應定義為:Dim Out() As String。
'您可用 OutBufferCount 屬性監看傳送緩衝區中的位元組數目。將該值設定為 0 即可清空傳送緩衝區。

' 等待資料傳回到序列連接埠
Do
DoEvents
  Buffer$ = Buffer$ & MSComm1.Input
  Exit Do
Loop Until InStr(Buffer$, "OK" & vbCrLf)  ' 從序列連接埠讀取 "OK" 回應資料
MSComm1.Output = "\r\nOK\r\n" & vbCr
'
MSComm1.Break = True
MSComm1.Output = " AT" & vbCr
T.Text = MSComm1.Input
erring:
'掛斷電話
MSComm1.Output = "ATH0" & vbCr
T.Text = MSComm1.Input
'
MSComm1.Output = "AT" & vbCr
T.Text = MSComm1.Input
Shape1.FillColor = 192
Fax.Enabled = True
End Sub
Private Sub Form_Load()
Combo1.ListIndex = 0
Dim PortValue As Integer
'設定或傳回通訊連接埠的代號,即屬性頁上的「通訊連接埠」。
MSComm1.CommPort = Combo1.ListIndex + 1
'在設計階段,value 可以設定成從 1 到 16 的任何數 (預設值為 1)。
'但是如果用 PortOpen 屬性開啟一個並不存在的連接埠時,
'MSComm 控制項會產生錯誤 68 (裝置無效)。
'警告 必須在開啟連接埠之前,先設定 CommPort 屬性。
'設定或傳回連線速率、同位檢查、資料位元與停止位
'MSComm1.Settings = "9600,N,8,1"
'Settings 屬性可以用來指定傳輸速率、同位檢查、資料位元數和停止位元數。
'按照預設值,傳輸速率將被設定為 9600。同位檢查是用來指定資料是否要進行
'檢查。通常是不需使用,所以設定為「N」。資料位元數指定一個資料區塊的
'位元數。停止位元則是用來指示資料區塊是否已接收完畢。
' 告訴控制項當使用 Input 時,讀取整個暫存區
'MSComm1.InputLen = 0
'設定或傳回通訊埠的狀態 (開啟或關閉)
MSComm1.PortOpen = True
End Sub

Private Sub Form_Unload(Cancel As Integer)
' 關閉序列連接埠
MSComm1.PortOpen = False
End Sub