勝負服画像情報要求(バイナリ)

タイトル 勝負服画像情報要求(バイナリ)
記事No 4816
投稿日 : 2022/02/20(Sun) 15:29
投稿者 サメの餌

JVFukuFileでは、問題なく実装出来るのですが、うちの数あるJVLink対応ソフト
がターゲットを含め個々にファイルに保存してますので、自分の開発中のソフト
は些細な容量ではあるのですが、ファイルではなく都度データ取得して表示する
方向にしようかとJVFukuの方で対応したいと試みているのですが、こちらでのサ
ポート対象外なC#ではありすまが、アドバイス頂ければ幸いです。

byte buf = new byte[7500];
int iReturnCode = JVFuku(pattern, buf);

としてiReturnCodeがゼロで帰ってくるのですが、bufが全てゼロのままなので
すが、用意しているbufが悪いのか困っています。JVFukuで実装出来ている方は
どんな感じでしているのか知りたかったです。50×50で24bitって事は3バイ
トで7500個用意すれば良いのかと思ったんですけどね。

インターフェース仕様書の説明では

画像データが格納されたバイト配列がセットされるポインタを設定します。

とbufの説明があるのですが、Cの頃にはポインタとか概念あったのですが、C#
だと違うのかな? unsafeとかでポインタ使えるとかみたいですが、理解出来な
かった。|

タイトル Re: 勝負服画像情報要求(バイナリ)
記事No 4817
投稿日 : 2022/02/23(Wed) 16:08
投稿者 Tachyon

以下で解決すると思います。

object buf = new byte[7654];
int iReturnCode = JVFuku(pattern, ref buf);

JVFukuの第2引数の「buff」は、コーディング時のツールチップに表示されるよ
うに参照渡し(ref)のobject型です。
また、戻り値のサイズは「7654」です。TARGET frontier JV の「FUKU_DATA」
フォルダのビットマップファイルのサイズと同じです。

参考までに。|

タイトル Re^2: 勝負服画像情報要求(バイナリ)
記事No 4818
投稿日 : 2022/02/23(Wed) 20:14
投稿者 サメの餌

Tachyonさん、いつもありがとうございます!

object buf = new byte[7654];
int iReturnCode = JVFuku(pattern, ref buf);

的確なアドバイス助かります。これでズバリ!行けました。これで得たbufをImageConverter使ってPictureBoxコントロールのImageにセットすれば簡単に表示する事が出来ました。

fuku.Image = (Image)imgconv.ConvertFrom(buf);

本当にありがとうございました。|