、クライアントは次の処理を行い受信側ではtemp(byte [])をSTRUCTなどに変換してメンバーcCommandとsPatameterにアクセスできるようにする必要がありますが、この時点でどのように手がかりを取る必要はありませんか...リアリティー構造体である必要はありません、私はちょうどデータ自体を抽出する必要があります。[C#の]私は、サーバー(C#の)にクライアント(C++)からデータを転送するために、名前付きパイプを使用しています
注 - STRUCT MESSAGEは私が思いついたものです。つまり、異なるフォーマットが再構成に役立つ(例えばsParameterの長さを追加するとどうなるでしょうか?)、COMMANDとPARAMETERが必要です1つのブロックで(可能な場合)転送されます。
要件は単純である: は - COMMANDアクションは 実行する必要があるかを示す固定長の8文字列である - パラメータが可変長であり、各コマンドに依存するパラメータ(これは問題を生じない限り)
例えば: COMMAND = TRANS
PARAMETER = C:\ file.txtをC:\新規フォルダ\ FILE.TXT
(これは単に例示するためであり、多くのアプリケーションがある)
可能であれば、私はそれをデータのまとまり(byte [])として抽出し、それを分解することができる自分のアプリケーションに渡したいと思います。サイズの読み込みのファンではなく、次にフィールド私のコミュニケーションが私の実装に過度にリンクされていることを必要とするフィールドです。
この転送を実装するより適切な方法がある場合は、私に教えてください...アドバイスは歓迎されるでしょう... 助けが大いに評価されるでしょう。 ありがとう、
これは可変長文字列(sParameter)でも同様ですか? – Shaitan00
MESSAGE構造体に別のMarshalAs属性を追加しましたが、動作するはずです。 – scottm
あなたの専門家の意見では - これは良い方法ですか?私が言及したように、私はそれが良い選択だと思ったのでSTRUCTを作成しました - しかし、私の問題を解決する良い方法があるなら私はすべての耳です... – Shaitan00