掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MSCOMMでWバイトの半分だけを送信するには? (ID:104693)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
相手先にはバイナリデータで送信できれば問題ないという事ですよね? 相手先はバイナリデータを見て、”全角文字””半角文字”を識別していると思いますので 送信側の対応として 1.送信元データを全てバイナリデータに変換する 2.256Byte単位にデータをまとめ伝送用のパーツ(<DLE><STX><CRC>など)と結合 3.該当データ(256+αByte)を伝送プログラムに乗っける 4.2、3を繰り返す こんな感じになるのではないでしょうか? Private Sub Btn_byte_Click() Dim Byte_line() As Byte ’全読込データ格納 Dim I As Long ’1Byte単位に処理する Dim ReadSize As Integer const ReadByte as Integer = 1 ’先頭からデータを読む ’∽∽∽ FD読込(全データのバイナリ値を取得) ∽∽∽ ReadSize = FileLen(strFname) ReDim Byte_line(0 To ReadSize - 1) ’ファイルサイズ取得 intFno = FreeFile Open strFname For For Binary As #intFno Get #1, ReadByte, Byte_line Close #intFno ’∽∽∽ データ処理 ∽∽∽ For i = 0 To ReadSize - 1 Byte01data = Hex(Byte_line(I)) ’バイナリデータ(1Byte)取得 Byte256data = Byte256data & Byte01data ’256Byteまで加算 Debug.Print Hex(Byte01data) ’∽∽∽ 伝送関係 ∽∽∽ If I Mod 256 = 0 Then ’256Byteの確認 ' MSComm2.Output = Byte256data Debug.Print Byte256data 伝送プログラム(256Byte単位) End If Next End Sub 1Byte文字、2Byte文字を判別する処理についてですが、 これはどうしても必要なのでしょうか? 伝送の事を考えると難しくなると思います。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.