本帖最后由 nence 于 2011-02-16 22:11:56 编辑

解决方案 »

  1.   

    GetText2 = GetText2 & IIf(a(i) < 16, "0", "") & Hex(a(i))
    这行代码犯了VB效率的3个大忌
    1.字符串&
    2.IIF()
    3.数字转字符要想速度快
    1.open时用binary方式,get/put时不要逐字节读(我习惯64K一组读入)
    2.比较时直接比较数字,不要把数字转换成16进制去比较,比较数字比字符串要快很多
    3.少用函数嵌套,套得越多,速度越慢以上...
      

  2.   

    Private Function GetText(ByRef a() As Byte) As String  
        Dim i As Long
            For i = 0 To 3
              GetText2 = GetText2 & right("0" & Hex(a(i)),2)
              doevents
            Next
    End Function