2012年8月24日金曜日

バイナリデータのチェック

VBSでバイナリデータのヘッダをチェックするコードを書いてます。
バイナリデータのヘッダ情報については以下のページを参考にしました。
http://www.garykessler.net/library/file_sigs.html

方法はADODB.Streamオブジェクトで引っ張って、ダンプ形式に変換するというものです。
参考コード
Function GetBinaryDumpDisplay(filename,length)
 Dim Stream
 Set Stream = CreateObject("ADODB.Stream")
 Dim LineBuffer,DispBuffer,CWork,i,j
 Stream.Open
 Stream.Type = 1  ' StreamTypeEnum の adTypeBinary
 Stream.LoadFromFile filename
 DispBuffer = ""
 j = 1
 Do while not Stream.EOS
  LineBuffer = Stream.Read(1)
  Cwork = AscB(LineBuffer)
  Cwork = Hex(Cwork)
  Cwork = Ucase(Cwork)
  Cwork = Right( "0" & Cwork, 2 )
  DispBuffer = DispBuffer & Cwork & " "
  If (j Mod 16) = 0 Then
   DispBuffer = DispBuffer & "
" & vbCrLf End If If j = length Then Exit Do End If j = j + 1 Loop Stream.Close GetBinaryDumpDisplay = DispBuffer End Function

0 件のコメント:

コメントを投稿