⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 declare.bas

📁 金卡(gold card),俗称84卡
💻 BAS
字号:
Attribute VB_Name = "DECLARE"
Option Explicit
Option Base 0

Type MemEntry
      Mem As String * 1
End Type

Declare Function ScardComand Lib "SCARD.DLL" (Handle As Long, ByVal Cmd As String, Cmdln As Long, ByVal Datin As String, DatInLn As Long, ByVal DatOut As String, DatoutLN As Long) As Long

Global Handle As Long

Global buffout As String * 2096
Global Buffin As String * 2096
Global Cmdln As Long
Global Datln As Long
Global Datlnout As Long
Global DatoutLN As Long
Global lotnr As String
Global serialNo As String

 Global keyindex As Integer
 
 
Global Memmap As String * 32000
Global Memsize As Integer

Global theMem As MemEntry





Function conv(instring$, outstring$)
   Dim readout$, readbuff$
   Dim i As Integer
     For i = 1 To 64

         readout$ = Right$("0" + Hex$(Asc(Mid$(instring$, i, 1))), 2)
         readbuff$ = readbuff$ + readout$
     Next i
         outstring$ = readbuff$
End Function

Function convbuff(instring$, outstring$, length)
   Dim readout$, readbuff$
   Dim i As Integer
     For i = 1 To length

         readout$ = Right$("0" + Hex$(Asc(Mid$(instring$, i, 1))), 2)

         readbuff$ = readbuff$ + readout$
     Next i
         outstring$ = readbuff$
End Function

Function CONVnum(instring$, outstring$, length)
   
   Dim readout$, readbuff$
   Dim lo$, Hi$
   Dim i As Integer
   Dim a As Integer
   Dim scrap As String * 1

     
   On Error GoTo errhandle

   For i = 1 To length
         
         scrap = (Mid$(instring$, i, 1))

         readout$ = Right$("0" + Hex$(Asc(Mid$(instring$, i, 1))), 2)
         readout$ = Right$("0" + Hex$(Asc(Mid$(instring$, i, 1))), 2)

         readbuff$ = readbuff$ + readout$

     Next i

     ' swap the data backward os 104563 becomes 015436

     For i = 1 To Len(readbuff$) Step 2

            lo$ = Mid$(readbuff, i, 1)
            Hi$ = Mid$(readbuff, i + 1, 1)

            
            If lo$ = "F" Then lo$ = " "
            If Hi$ = "F" Then Hi$ = " "

            If lo$ = "A" Then lo$ = "*"
            If Hi$ = "A" Then Hi$ = "*"

            If lo$ = "B" Then lo$ = "#"
            If Hi$ = "B" Then Hi$ = "#"

            If lo$ = "C" Then lo$ = "P"
            If Hi$ = "C" Then Hi$ = "P"


            Mid$(readbuff, i, 1) = Hi$
            Mid$(readbuff, i + 1, 1) = lo$


     Next i
     outstring$ = readbuff$

     Exit Function

errhandle:
    
    Resume Next

End Function

Function CONVSTR(instring$, outstring$, length)
   
   Dim readout$, readbuff$
   Dim lo, Hi As Integer
   Dim i As Integer
   Dim buff$
   Dim temp As Integer

     
   readbuff$ = ""

   For i = 1 To length Step 2
         
         lo = Val(Mid$(instring$, i, 1))

         ' USED AS *
         If (Mid$(instring$, i, 1)) = "*" Then
            lo = &HA
         End If
            
         ' Used as #
         If (Mid$(instring$, i, 1)) = "#" Then
            lo = &HB
         End If
         
         ' Used as P for Pasue
         If (Mid$(instring$, i, 1)) = "P" Then
            lo = &HC
         End If

         If i = length Then
            Hi = &HF0
         Else

            ' BLANK
            If (Mid$(instring$, i + 1, 1)) = " " Then
               Hi = &HF
            Else
               Hi = Val(Mid$(instring$, i + 1, 1)) * 16
            End If
         
            ' USED AS *
            If (Mid$(instring$, i + 1, 1)) = "*" Then
               Hi = &HA0
            End If
            
            ' Used as #
            If (Mid$(instring$, i + 1, 1)) = "#" Then
               Hi = &HB0
            End If
         
            ' Used as P for Pasue
            If (Mid$(instring$, i + 1, 1)) = "P" Then
               Hi = &HC0
            End If
         
         
         
         
         End If
         
         readout$ = Chr$(Hi + lo)
         
         readbuff$ = readbuff$ + readout$
   
   Next i

outstring$ = readbuff$


End Function

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -