私はC++コードをC#に移植しています。以下のように2つの構造体があります。 は//私のコードは次のような方法でのmemcpyを使用して180バイトmemcpy in C#で異なるデータ型
typedef struct MAINTENANCE_PARAM`
{
BYTE bCommand;
BYTE bSubCommand;
USHORT usDataLength;
union // Must be no larger than 176 bytes
{
MyStruct1 myStruct1;
MyStruct2 myStruct2;
BYTE bDummy[176];
} data;
} MAINTENANCE_PARAM;
typedef struct _OCI_PARAM {
SHORT sType; // Size: 2
LONG lValue; // 4
SHORT sScale; // 2
LONG lValueTabIdx; // 4
} OCI_PARAM[OCI_MAXPARAM]; //Size: OCI_MAXPARAM = 15 // 15 * 12 = 180
の合計でなければなりません。
MAINTENANCE_PARAM maintainanceParam;
OCI_PARAM ociParam
// Copy recieved structure to correct format
memcpy((void*)& maintainanceParam, (void*) ociParam, sizeof(OCI_PARAM));
私が知っているように、memcpyのコードはC#にはありません。だから、私はどのように 上記のコードをC#に移植することができます。私はC#の初心者です。私は のC#についてはあまり知らない。だから誰でも私はどのように正確に上記の コード行を実装することができます私に教えることができますC#で。ある構造から別の構造体に異なるデータ型の180バイトをコピーする必要があります アドバンスで助けていただきありがとうございます。あなたはRtlMoveMemory
(P /呼び出し)をインポートし、明示的に自分のフィールドをレイアウトすることができるよう よろしく、 アシシュ
できません。別の従来のアプリケーション/システム/ライブラリに接続するためにこれらの構造が必要か、すべてを再実装していますか? – xanatos
私はこれらの構造がそのまま必要です:-) – Ashish