すでにご存知かもしれませんが、私は C# に移行しており、C++ の一部が異なって見えます。
C++ コード
BYTE packetBuffer[32] = {0};
*(LPWORD)(packetBuffer + 0) = 0xC;
*(LPWORD)(packetBuffer + 2) = 0x5000;
*(LPDWORD)(packetBuffer + 6) = dwArgs[13];
*(LPDWORD)(packetBuffer + 10) = *(keyArray2 + 0);
*(LPDWORD)(packetBuffer + 14) = *(keyArray2 + 1);
注 dwArgs と keyArray2 は「DWORD の配列」です
こんな感じで配置されています
- packetbuffer[0] は 0xC になります
- packetbuffer[1] は 0x00 になります
- packetbuffer[2] は 0x50 になります
- パケットバッファ[3] は 0x00 になります
等々
C#でそれを行う方法は?
私はこれを試しましたが、うまくいきません
packetBuffer[0] = 0xC;
packetBuffer[2] = (byte)0x5000; //error
packetBuffer[6] = (byte)dwArgs[13];