タイトル : chr(&H82)をUDPで送ると&H00になる(Winsock) 投稿日 : 2013/02/09(Sat) 00:02 投稿者 : ぷー
はじめまして。知恵をお貸しください。 下のような感じでソフトを組んでUDPでコマンドを送っています。 コマンドの実行状態がおかしかったので、Wiresharkで送信パケット?を調べると Chr(&H82)の部分だけ「00」となって送信されています。 Q1.どうすれば&H82の部分を正常に送信できるようになるのでしょうか・・・ Q2.現在送信文字列(result)をforで回していますが、 他に何かスマートな方法は無いでしょうか? 環境:VB6,WindowsXP(SP2), Private sub cmd_Click() dim cmnd(20) as string dim result as string dim iCount as integer 'ポートオープン With Winsock .close .Protocol = sckUDPProtocol .RemoteHost = "192.168.1.2" .RemotePort = 9600 .Bind 10000 End with 'コマンド準備 cmnd(0) = chr(&H80) cmnd(1) = chr(&H00) cmnd(2) = chr(&H02) cmnd(3) = chr(&H00) cmnd(4) = chr(&H32) cmnd(5) = chr(&H82) '←これだけ化ける for iCount = 0 to 5 result = cmnd(iCount) & result next Winsock.senddata result 'コマンド送信 end sub 実際はcmnd(x)の部分が長々と続くのですが…、 これを実行すると「80 00 02 00 32 82」と送信して欲しい所が 「80 00 02 00 32 00」と送信されています。 |