私はCのDLLをインポートC#プロジェクトを持って、dllがこの機能を持っています渡すポインタ
int primary_read_serial(int handle, int *return_code, int *serial, int length);
私はシリアルパラメータへのアクセスを取得したいです。私は実際にシリアルパラメータの1文字を返すようにしましたが、私は何をしているのか、何が起こっているのか理解したいとは思っていません。
私は、DLLがアクセスされていること、ポインタのない他の関数がうまく動作していることを確信しています。ポインタをどのように扱うのですか?私はそれをマーシャリングする必要がありますか?データを置く場所を固定しなければならないのでしょうか?
説明は素晴らしいでしょう。
ありがとうございます! リチャード
具体的には、アンマネージ配列とマネージint []とMarshal.Copyをアンマネージド配列のIntPtrを管理対象配列に割り当てます。 –
try-catchまたはtry-finally? – MedicineMan
try-finally、それを指摘してくれてありがとう。一定。 – Coincoin