【現在の問題】
現在、CanonカメラをC#で制御できるSDKであるEDSDKを使おうとしています。
しかし、Editor上から再生した瞬間にUnityがEDSDKをネイティブアプリとして認識してくれずに、作業が難航しております。
【やったこと】
・環境変数にdllのパスを通す(再起動済み)Path変数にパスを追加、PATHEXTにも読み込む拡張子のdllを登録
・ビルド設定からアーキテクチャを変更 x84→x84_x64 逆もまた試してみた。
・dllを読み込むためのフォルダを変更、Assetsフォルダ直下に置いて直ったなどの報告もあげられていたので、階層を変えて読み込みなおしてみる
・ネイティブアプリのimport settingをチェック。
・DLLのビット数を調べる。SDKのdllは32bit
(XzingなどのQRコード生成dllは32bitでも動いたので、これは関係ない?)
・windowsセキュリティの無効化
・player settingから.NETの種類を変更 .NET4.0←→.NET standard2.0
・dllのライブラリの依存関係を調べる?Dependency Walkerを使ったが古すぎてwindows10では動かない。別の方法で試せないか模索中(今ここ)
・Nugetパッケージマネージャー for solutionにEDSDKのNugetをインストール。
・ビルドしてみても同じようなエラーが出てしまう。
【補足】
ソースコードを読む限りだと、
[DllImport(DLLPath)]からDLLを読み込んでいるのですが、参照元がAssets/Pluginsではなく、/Resoures/EDSK.dll
と書かれておりました。こちらも書き換えて、Pluginsから参照するようにしましたが同じエラー内容が出てしまいました。
皆様のお知恵を貸して頂ければ幸いです。よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー