前提・実現したいこと
Unity で Windows ネイティブプラグインを作成しています。C++ 初心者です。
Unity C# から C++ に複数のファイルのバイナリを渡したいため、「バイト配列の配列」を引数で渡したいのですが、下記のようにすると、Unity が落ちてしまいます。
該当のソースコード
C#
1[DllImport("dllName")] 2private static extern void hogehoge(byte[][] binaryDataList);
C++
1void hogehoge(unsigned char** binaryDataList);
単一のバイナリは C# 側では byte[] で定義し、C++ 側では unsigned char* で定義することにより渡せることは確認しています。文字列や数字の配列はポインタにすれば実現できたので、バイト配列の配列も、単純にポインタを増やせばいいのではないかいう発想でやってみたのですが、型の不一致なのか Unity が強制終了します。
ネット上で調べてみても、このようなケースは見つからず途方に暮れています。
熟練者の方々の知恵をお借りさせていただければと思います。よろしくお願いいたします。
補足情報(FW/ツールのバージョンなど)
環境 : Windows 10
Unity : 2017.3.1p3
VisualStudio : 2017
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/05 05:53 編集
2018/04/05 05:56
2018/04/05 06:02
2018/04/06 00:42