1

リスニング端末にデータを送信するにはどうすればよいですか?!?! (タスクを参照)

シナリオは次のとおりです。

192.168.1.100:12345 などの IP:PORT をリッスンしている端末があります。

ソケットを作成し、次のように接続します

$socket = socket_create(AF_INET, SOCK_STREAM, 0);
$result = socket_connect($socket, $host, $port);

次に、ソケットにデータを書き込みます。私が持っているデータは次のようになります:

0x06 0x01 0x07 0x04 0x00 0x00 0x00 0x00 0x00 0x69

実際には端末が0.69 centディスプレイに表示されるはずです。しかし、私は0x69あまりにも前にデータを送信する必要があります。

次のようなデータを送信しています

socket_write($socket, $data, strlen($data));

私はphp関数についていくつか読んで、pack()これを試しました...

$data = pack( "C", "\x06\x01\x07\x04\x00\x00\x00\x00\x00\x69" );

私も試したことは

$data = pack("c","\x06\x01\x07\x04\x00\x00\x00\x00\x00\x69");//nothing happens
$data = "0x06 0x01 0x07 0x04 0x00 0x00 0x00 0x00 0x00 0x69";//nothing happens

しかし、これではうまくいきません。

私の友人は C++ でプログラムを書きましたが、簡単に動作します。

仕事

タスクは、データを 8 ビット形式および 16 進数として送信することです。

編集

C++ コード

4

4 に答える 4