- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:パイプを用いた通信 C#とMATLAB)
パイプ通信でC#からMATLABへデータを送信する方法は?
このQ&Aのポイント
- パイプを使用しC#から送信したデータをMATLABで受信することは可能でしょうか?
- MATLAB側で受信ができず、-1が返ってくる場合、C言語ではうまくいくがMATLABを使用するとファイルのopenができません。
- 具体的なC#とMATLABのプログラムの例も掲載しています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
MATLABがパイプに対応しているかどうかしらないけどパイプの標準名は 'C:\\\\.\\pipe\\test' ではないと思う。パイプの識別名は \\.\pipe\test の形式のはずなので、'\\\\.\\pipe\\test'かな。 あとフラッシュをオートでなく明示的に行うとどうなるか確認して。 ファイルで上手くいくならその方が楽だと思うけど。
その他の回答 (2)
- rinkun
- ベストアンサー率44% (706/1571)
回答No.3
> >>フラッシュをオートでなく明示的に行う > こちらの文がわからないので、詳しく教えて頂けますか? これはPythonで遭遇した事例で、C#ではどうか分かりませんが、自動フラッシュだとコンソールにはすぐ出力されるのにパイプやファイルにはなかなか出力されないで困ったことがあります。 # 実行経過のログ出力をリダイレクトすると全部の処理が終わるまでログが出てこない これが原因なら一行の出力ごとに明示的にフラッシュを挿入すれば確実に出力されて問題なくなります。 Cプログラムでは問題なく受信できているならこれも外れの可能性が高いですけど。
noname#137556
回答No.1
直接の回答ではありませんが, .NET Framework とのインターフェイスが用意されているようですから, それを使うのが真っ当なやり方ではないでしょうか。 http://www.mathworks.cn/help/techdoc/matlab_external/brpb5k6-1.html # 一旦ファイルに落とすほうが簡単そうな気はしますが。
補足
'C:\\\\.\\pipe\\test'の部分なのですが'\\\\.\\pipe\\test'のようにやってみたのですが結果はかわりませんでした。 >>フラッシュをオートでなく明示的に行う こちらの文がわからないので、詳しく教えて頂けますか? よろしくお願いします