1. 定义常量 forreading = 1
  2. 定义常量 forwriting = 2
  3. 定义常量 forappending = 8
  4. 定义变量 objShell
  5. 定义变量 MyArray, Rx, Ry
  6. 定义变量 KeyYouPress
  7. 令 objShell = CreateObject("WScript.Shell")
  8. 注释:DirPath = objShell.SpecialFolders.Item("DeskTop")
  9. 令 DirPath = "E:\特征码"
  10. 令 MsgStr = "按 Esc 键退出键码测试"
  11. 令 MsgStr = MsgStr & vbCrlf & "按 F1 键进行特征码抓取"
  12. 令 MsgStr = MsgStr & vbCrlf & "按 F2 键进行特征码验证"
  13. 令 MsgStr = MsgStr & vbCrlf & "按 F3 键进行按键码值测试"
  14. 循环当 true 时
  15.     弹出窗口 MsgStr
  16.     令 KeyYouPress = (键盘)等待按任意键
  17.     如果 KeyYouPress = 27 则
  18.         弹出窗口 "退出主程序!"
  19.         跳出循环
  20.     条件结束
  21.     如果 KeyYouPress = 114 则
  22.         调用 AscIIOfKey()
  23.     条件结束
  24.     如果 KeyYouPress = 112 则
  25.         令 FileName = InputBox("请输入" & vbCrlf & "所取特征物想要保存的" & vbCrlf & "文本文件名称!","文件保存")
  26.         令 FileName = LTrim(RTrim(FileName)) & ".txt"
  27.         调用 Get_Features(DirPath,FileName)
  28.     条件结束
  29.     如果 KeyYouPress = 113 则
  30.         令 FileName = InputBox("请输入" & vbCrlf & "所取特征物想要保存的" & vbCrlf & "文本文件名称!","文件保存")
  31.         令 FileName = LTrim(RTrim(FileName)) & ".txt"
  32.         令 XY = IsFeaturesExists(DirPath,FileName)
  33.         如果 left(XY,1) = "-" 则
  34.             弹出窗口 "没有找到!"
  35.         否则
  36.             令 MyArray = Split(XY,"|")
  37.             令 Rx = CInt(MyArray(0))
  38.             令 Ry = CInt(MyArray(1))
  39.             弹出窗口 "找到了,坐标为: " & Rx & "," & Ry
  40.         条件结束
  41.     条件结束
  42. 循环结束
  43. 脚本停止运行
  44. 函数 IsFeaturesExists(DirPath,FileName)
  45.     定义变量 objShell, fso, MyArray
  46.     定义变量 fSourceName, fTargetname
  47.     定义变量 Rx(100), Ry(100), Rs(100)
  48.     定义变量 PixelColor(100), Features(100)
  49.     定义变量 Num
  50.     令 fTargetname = DirPath & "\" & "对比结果.txt"
  51.     令 fSourceName = DirPath & "\" & FileName
  52.     令 objShell = CreateObject("WScript.Shell")
  53.     注释:↑取得桌面路径
  54.     令 fso = CreateObject("Scripting.FileSystemObject")
  55.     如果 fso.FileExists(fSourceName) = 0 则
  56.         令 IsFeaturesExists = "-2|-2"
  57.         跳转到标记 EndOfFunc(函数 IsFeaturesExists)
  58.     条件结束
  59.     注释:↑文件不存在
  60.     令 fSource = fso.OpenTextFile(fSourceName,ForReading,True)
  61.     (语句无法识别,可能有错误): Num = 0 //记录有效记录数
  62.     循环当 fSource.AtEndOfStream <> true 时
  63.         令 sLine = trim(fSource.ReadLine())
  64.         如果 Left(sLine,2) <> "//" 则
  65.             令 Num = Num + 1
  66.             令 MyArray = Split(sLine,",")
  67.             令 Rx(Num) = CInt(MyArray(0))
  68.             令 Ry(Num) = CInt(MyArray(1))
  69.             令 Features(Num) = MyArray(2)
  70.             令 PixelColor(Num) = 得到指定点 (Rx(Num), Ry(Num)) 的颜色
  71.             注释: PosOfSeparator = InStr( sLine, ",")
  72.             注释: Rx(Num) = Clng( Left( sLine, PosOfSeparator - 1 ))
  73.             注释: sLine = right( sLine, len( sLine ) - PosOfSeparator )
  74.             注释: PosOfSeparator = InStr( sLine, ",")
  75.             注释: Ry(Num) = Clng( Left( sLine, PosOfSeparator - 1 ))
  76.             注释: Features(Num) = right( sLine, len( sLine ) - PosOfSeparator )
  77.             注释: PixelColor(Num)=GetPixelColor( Rx(Num), Ry(Num) )
  78.             注释:// ↑上面这段跟使用数组效果是一样的
  79.         条件结束
  80.     循环结束
  81.     注释:↑上面就是读文件并处理
  82.     如果 fso.FileExists(fTargetname) = 0 则
  83.         令 fTarget = fso.OpenTextFile(fTargetName,ForWriting,True)
  84.         fTarget.Close()
  85.     否则
  86.         令 fTarget = fso.opentextfile(fTargetName,forreading)
  87.         fTarget.Close()
  88.     条件结束
  89.     注释:↑创建文件:对比结果.txt
  90.     令 fTarget = fso.OpenTextFile(fTargetName,forappending)
  91.     fTarget.writeline(("//下面是[" & FileName & "]的对比结果"))
  92.     循环 i 从 1 到 Num
  93.         fTarget.writeline((Rx(i) & "," & Ry(i) & "," & Features(i) & "," & PixelColor(i)))
  94.     循环结束
  95.     注释:↑上面就是写进TXT的找到的点坐标
  96.     fTarget.Close()
  97.     令 Featuresstr = ""
  98.     循环 i 从 2 到 9
  99.         令 Rx(i) = Rx(i) - Rx(1)
  100.         令 Ry(i) = Ry(i) - Ry(1)