掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
バイナリとTypeについて (ID:126970)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
んー…分けるだけなら簡単に出来るのですけどねぇ… 逆にLong値を作るときにちょっと問題がありまして。 VB6のLong型は符号有りですから… というわけで、なんとなく作ってみました: Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _ (Destination As Any, Source As Any, ByVal Length As Long) Public Function revOrder(ByVal L As Long) As Long Dim buf(1 To 4) As Byte 'L先頭アドレスから4バイトを 'buf(1)の先頭アドレスから4バイトの部分にコピー CopyMemory buf(1), L, 4 'buf(1)とbuf(4)を入れ替える buf(1) = buf(1) Xor buf(4) buf(4) = buf(1) Xor buf(4) buf(1) = buf(1) Xor buf(4) 'buf(2)とbuf(3)を入れ替える buf(2) = buf(2) Xor buf(3) buf(3) = buf(2) Xor buf(3) buf(2) = buf(2) Xor buf(3) 'revOrderにbufをコピー CopyMemory revOrder, buf(1), 4 End Function Private Sub Form_Load() Debug.Print Hex(revOrder(&H12345678)) End Sub 値のスワップ部分は勘で書いたので、心配が残ります…
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.