亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mcomm32api.bas

?? VB編寫的手機短信源碼
?? BAS
字號:
Attribute VB_Name = "mComm32API"
'*/-------------------------------------------------------------
'*/模 塊 名:mComm32API.bas
'*/功    能:API串口打開、關閉、寫數據、讀數據等函數
'*/-------------------------------------------------------------

Option Explicit

'定義端口
Public Type COMStat
 fCtsHold As Long
 fDsrHold As Long
 fRlsdHold As Long
 fXoffHold As Long
 fXoffSent As Long
 fEof As Long
 fTxim As Long
 fReserved As Long
 cbInQue As Long
 cbOutQue As Long
End Type

'定義超時溢出
Public Type COMMTimeOuts
 ReadIntervalTimeout As Long
 ReadTotalTimeoutMultiplier As Long
 ReadTotalTimeoutConstant As Long
 WriteTotalTimeoutMultiplier As Long
 WriteTotalTimeoutConstant As Long
End Type

'定義DCB塊
Public Type DCB
 DCBlength As Long
 BaudRate As Long
 fBinary As Long
 fParity As Long
 fOutxCtsFlow As Long
 fOutxDsrFlow As Long
 fDtrControl As Long
 fDsrSensitivity As Long
 fTXContinueOnXoff As Long
 fOutX As Long
 fInX As Long
 fErrorChar As Long
 fNull As Long
 fRtsControl As Long
 fAbortOnError As Long
 fDummy2 As Long
 wReserved As Integer
 XonLim As Integer
 XoffLim As Integer
 ByteSize As Byte
 Parity As Byte
 StopBits As Byte
 XonChar As Byte
 XoffChar As Byte
 ErrorChar As Byte
 EofChar As Byte
 EvtChar As Byte
End Type

'API
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFilename As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, ByVal lpSecurityAttributes As Long, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Declare Function SetCommTimeouts Lib "kernel32" (ByVal hFile As Long, lpCommTimeouts As COMMTimeOuts) As Long
Private Declare Function GetLastError Lib "kernel32" () As Long
Private Declare Function BuildCommDCB Lib "kernel32" Alias "BuildCommDCBA" (ByVal lpDef As String, lpDCB As DCB) As Long
Private Declare Function SetCommState Lib "kernel32" (ByVal hCommDev As Long, lpDCB As DCB) As Long
Private Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, lpNumberOfBytesRead As Long, lpOverlapped As Long) As Long
Private Declare Function WriteFile Lib "kernel32" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As Long) As Long
Private Declare Function FlushFileBuffers Lib "kernel32" (ByVal hFile As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

'端口全局變量
Public ComNum As Long
Public bRead(255) As Byte
Public statuGSM As Boolean

'*/-------------------------------------------------------------
'*/函 數 名:StartCOM32
'*/功    能:打開指定端口
'*/返 回 值:Long
'*/         1---串口號無效;
'*/         2---串口連接超時;
'*/         3---波特率設置無效(DCB無法建立);
'*/         4---波特率設置無效(DCB無法設置);
'*/         5---發送AT指令不響應(端口打開不成功);
'*/參    數:ComNumber      指定端口號
'*/         Comsettings    端口參數,波特率,數據位,停止位,奇偶校驗
'*/-------------------------------------------------------------

Public Function StartCOM32(ComNumber As String, Comsettings As String) As Long
    On Error GoTo HandelInitCOM
    Dim ComSetup As DCB, BarDCB As DCB
    Dim Answer, Stat As COMStat
    Dim CtimeOut As COMMTimeOuts
    Dim retval As Long, RetBytes As Long
    
    ComNum = CreateFile(ComNumber, &HC0000000, 0, 0&, &H3, 0, 0)
    If ComNum = -1 Then
        StartCOM32 = 1
        Exit Function
    End If
    CtimeOut.ReadIntervalTimeout = 2
    CtimeOut.ReadTotalTimeoutConstant = 1
    CtimeOut.ReadTotalTimeoutMultiplier = 1
    CtimeOut.WriteTotalTimeoutConstant = 10
    CtimeOut.WriteTotalTimeoutMultiplier = 1
    retval = SetCommTimeouts(ComNum, CtimeOut)
    If retval = -1 Then
        retval = GetLastError()
        retval = CloseHandle(ComNum)
        StartCOM32 = 2
        Exit Function
    End If
    retval = BuildCommDCB(Comsettings, BarDCB)
    If retval = -1 Then
        retval = GetLastError()
        retval = CloseHandle(ComNum)
        StartCOM32 = 3
        Exit Function
    End If
    retval = SetCommState(ComNum, BarDCB)
    If retval = -1 Then
        retval = GetLastError()
        retval = CloseHandle(ComNum)
        StartCOM32 = 4
        Exit Function
    End If
    If InStr(SendAT("AT", 5), "OK") > 0 Then
       If inDevice Then StartCOM32 = 0
    Else
       If InStr(SendAT("AT", 5), "OK") > 0 Then
          If inDevice Then StartCOM32 = 0
       Else
          StartCOM32 = -1
      End If
    End If
HandelInitCOM:
    Exit Function
End Function

'*/-------------------------------------------------------------
'*/函 數 名:ReadCOM32
'*/功    能:讀取端口返回的數據
'*/返 回 值:字符
'*/-------------------------------------------------------------
Public Function ReadCOM32() As String
    On Error GoTo HandelPureCOM
    Dim RetBytes As Long, i As Integer, ReadStr As String, retval As Long
    Dim CheckTotal As Integer, CheckDigitLC As Integer
    
    retval = ReadFile(ComNum, bRead(0), 255, RetBytes, 0)
    ReadStr = ""
    If (RetBytes > 0) Then
        For i = 0 To RetBytes - 1
            ReadStr = ReadStr & Chr(bRead(i))
        Next i
    Else
        Call FlushCOM32
    End If
    ReadCOM32 = ReadStr
HandelPureCOM:
    Exit Function
End Function

'*/-------------------------------------------------------------
'*/函 數 名:WriteCOM32
'*/功    能:向指定端口寫入數據
'*/返 回 值:整型
'*/參    數:COMString   向端口發送的指定字符
'*/-------------------------------------------------------------
Public Function WriteCOM32(COMString As String) As Integer
    On Error GoTo HandelWriteLPT
    Dim RetBytes As Long, LenVal As Long, retval As Long
    
    If Len(COMString) > 255 Then
        WriteCOM32 Left$(COMString, 255)
        WriteCOM32 Right$(COMString, Len(COMString) - 255)
        Exit Function
    End If
    For LenVal = 0 To Len(COMString) - 1
        bRead(LenVal) = Asc(Mid$(COMString, LenVal + 1, 1))
    Next LenVal
    retval = WriteFile(ComNum, bRead(0), Len(COMString), RetBytes, 0)
    WriteCOM32 = RetBytes
    
HandelWriteLPT:
    Exit Function
End Function

'*/-------------------------------------------------------------
'*/函 數 名:CloseCOM32
'*/功    能:關閉指定端口
'*/-------------------------------------------------------------
Public Function CloseCOM32()
    CloseCOM32 = CloseHandle(ComNum)
End Function

'*/-------------------------------------------------------------
'*/函 數 名:FlushCOM32
'*/功    能:關閉指定端口數據棧和清除緩沖區
'*/-------------------------------------------------------------
Public Function FlushCOM32()
    Call FlushFileBuffers(ComNum)
End Function

'*/-------------------------------------------------------------
'*/函 數 名:SendAT
'*/功    能:發送AT指令函數
'*/返 回 值:字符
'*/參    數:sAT          AT指令字符 不帶回車,程序自動加入
'*/         DeleyTime    延時值,在某些返回值需要等待,默認為5,
'*/                      讀取短信時要加大,如20
'*/-------------------------------------------------------------
Public Function SendAT(sAT As String, DeleyTime As Integer) As String
    Dim tTimeOut As Long, DataCOM32 As String
    Call WriteCOM32(sAT & vbCr)
    Pause 0.1   '寫入時延時
    DataCOM32 = DataCOM32 & ReadCOM32()
    Pause 0.1   '讀取延時
    Debug.Print DataCOM32
    tTimeOut = Timer
    DoEvents
    If InStr(DataCOM32, "ERROR") = 0 Then
      Do While Not InStr(DataCOM32, "OK") > 0
        DataCOM32 = DataCOM32 & ReadCOM32()
        If Timer > tTimeOut + DeleyTime Then
          DataCOM32 = "超時!" & vbCrLf
          Exit Do
        End If
      Loop
    End If
    Call FlushCOM32
    SendAT = DataCOM32
End Function

'*/-------------------------------------------------------------
'*/過 程 名:Pause
'*/功    能:暫停函數,延時用
'*/返 回 值:無
'*/參    數:Dauer 延時值
'*/-------------------------------------------------------------
Sub Pause(Dauer)
    Dim Start As Long
    Start = Timer
    Do While Timer < Start + Dauer
        DoEvents
    Loop
End Sub

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品专区在线影院重磅| 97精品超碰一区二区三区| 欧美群妇大交群的观看方式| 亚洲丶国产丶欧美一区二区三区| 色天天综合久久久久综合片| 亚洲国产精品自拍| 777亚洲妇女| 国产麻豆成人精品| 亚洲日穴在线视频| 91精品国产综合久久国产大片| 久久99热99| 国产精品福利影院| 在线观看视频一区二区欧美日韩| 亚洲成在人线免费| 精品成人佐山爱一区二区| 成人久久视频在线观看| 夜夜嗨av一区二区三区网页| 91精品国产欧美一区二区成人| 国产乱理伦片在线观看夜一区| 中文字幕制服丝袜成人av| 欧美性三三影院| 国产在线一区观看| 亚洲一区二区在线播放相泽| 日韩欧美国产三级| 91视频观看免费| 美女免费视频一区| 亚洲视频每日更新| 日韩一区二区在线看| 91丨九色丨蝌蚪富婆spa| 日韩精品一级二级| **欧美大码日韩| 日韩欧美国产1| 色婷婷国产精品| 国产一区视频在线看| 亚洲午夜精品17c| 国产午夜精品久久久久久免费视| 欧洲精品视频在线观看| 国产成人午夜99999| 久久精品国产成人一区二区三区 | 国产在线播放一区三区四| 欧美国产日韩精品免费观看| 51精品久久久久久久蜜臀| 91丝袜呻吟高潮美腿白嫩在线观看| 美女视频黄久久| 亚洲综合成人网| 亚洲视频一区在线观看| 久久精品综合网| 日韩一级高清毛片| 欧美疯狂性受xxxxx喷水图片| jlzzjlzz亚洲女人18| 激情小说欧美图片| 午夜精品一区二区三区电影天堂| 1024国产精品| 国产欧美综合在线| ww亚洲ww在线观看国产| 欧美一二三在线| 欧美另类久久久品| 欧美中文字幕不卡| 色综合一区二区| 99精品久久只有精品| 国产精品99久久久久久有的能看| 美国av一区二区| 免费日本视频一区| 亚洲高清视频在线| 亚洲成人免费电影| 亚洲一区二区三区四区五区黄| 亚洲色图视频网站| 中文字幕在线不卡一区二区三区| 久久久99精品免费观看不卡| 久久色视频免费观看| 欧美r级在线观看| 精品免费日韩av| 精品久久久久一区二区国产| 日韩欧美中文字幕精品| 日韩一区二区在线观看视频播放| 日韩一级二级三级| 精品国产污网站| 久久精品视频免费| 日本一区二区综合亚洲| 国产精品久久久99| 亚洲免费在线播放| 亚洲一区二区av电影| 亚洲国产一区二区在线播放| 亚洲国产成人porn| 天堂午夜影视日韩欧美一区二区| 亚洲国产成人av网| 日韩二区三区在线观看| 六月丁香综合在线视频| 国产一区 二区| kk眼镜猥琐国模调教系列一区二区| www.成人在线| 在线影院国内精品| 4438亚洲最大| 久久久精品黄色| 国产精品另类一区| 亚洲精品少妇30p| 五月天久久比比资源色| 天天综合网天天综合色| 九九精品一区二区| 成人黄色在线看| 色婷婷综合中文久久一本| 欧洲亚洲国产日韩| 欧美精品一区二区三区久久久| 亚洲国产精品ⅴa在线观看| 亚洲毛片av在线| 麻豆一区二区在线| 成人激情开心网| 欧美日韩在线综合| 精品国产乱码久久| 亚洲免费av在线| 激情成人综合网| 成人a免费在线看| 欧美一区二区三区影视| 中文字幕免费不卡| 奇米影视一区二区三区小说| 国产精品1区2区| 欧美三区免费完整视频在线观看| 26uuu国产电影一区二区| 日韩美女精品在线| 美国一区二区三区在线播放| 91啪亚洲精品| 久久一区二区三区国产精品| 艳妇臀荡乳欲伦亚洲一区| 99久久精品费精品国产一区二区| 欧美少妇一区二区| 欧美激情中文不卡| 日本色综合中文字幕| 99re亚洲国产精品| 精品美女在线播放| 天天操天天干天天综合网| 99re在线精品| 国产亚洲女人久久久久毛片| 天天综合色天天综合色h| 99久久精品国产麻豆演员表| 久久综合久久综合久久| 亚洲韩国精品一区| 91丝袜呻吟高潮美腿白嫩在线观看| 欧美成人a∨高清免费观看| 一区二区三区精品| 国产91在线观看丝袜| 欧美一区二区大片| 亚洲成人精品一区二区| 91丨九色丨黑人外教| 国产亲近乱来精品视频| 免费成人美女在线观看| 欧美人狂配大交3d怪物一区| 最好看的中文字幕久久| 国产一区 二区| 久久日韩粉嫩一区二区三区| 免费成人性网站| 91精品久久久久久久99蜜桃| 亚洲成人av一区| 色视频一区二区| 亚洲精品国产视频| 不卡一卡二卡三乱码免费网站| 国产性做久久久久久| 狠狠色丁香久久婷婷综合丁香| 欧美精品第1页| 五月天激情小说综合| 欧美精品aⅴ在线视频| 亚洲亚洲人成综合网络| 91成人国产精品| 亚洲激情校园春色| 91福利精品视频| 亚洲电影视频在线| 欧美理论电影在线| 首页综合国产亚洲丝袜| 欧美酷刑日本凌虐凌虐| 日韩影院在线观看| 6080亚洲精品一区二区| 久久国产婷婷国产香蕉| 欧美大片在线观看| 国产精品资源网| 国产精品麻豆99久久久久久| 91偷拍与自偷拍精品| 一区二区三区小说| 欧美精品在线视频| 天天色综合成人网| 精品国产三级电影在线观看| 国产精品羞羞答答xxdd| 国产精品久久久久影院老司| 99久久精品久久久久久清纯| 亚洲精品成人悠悠色影视| 欧美日韩大陆在线| 久久精品国产精品亚洲红杏| 久久久久综合网| 99免费精品视频| 丝袜国产日韩另类美女| 欧美精品一区二区久久久| 高清成人在线观看| 一区二区高清在线| 日韩一二在线观看| 国产99久久久精品| 一区二区三区久久| 日韩精品中文字幕一区| 懂色av一区二区三区免费观看| 亚洲图片欧美激情| 777午夜精品视频在线播放| 国产福利一区在线观看| 亚洲精品免费在线观看|