前提・実現したいこと
<probing>
を使いexe直下に作ったdll
フォルダーに入れたhogehoge.dll
を読み込みたいです。
exeと同じフォルダーの時は読み込みます。
- 読み込む場合
bin\Debug | |ーTestApp.exe |ーhogehoge.dll
- 実現したいこと
bin\Debug | |ーdll | |ーhogehoge.dll | |ーTestApp.exe
発生している問題・エラーメッセージ
ハンドルされていない例外: System.DllNotFoundException: DLL 'hogehoge.dll' を読み込めません:指定されたモジュールが見つかりません。 (HRESULT からの例外:0x8007007E)
該当のソースコード
App.Config
C#
1<?xml version="1.0" encoding="utf-8" ?> 2<configuration> 3 <startup> 4 <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> 5 </startup> 6 <!--追加したコード--> 7 <runtime> 8 <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 9 <probing privatePath="dll"/> 10 </assemblyBinding> 11 </runtime> 12 <!--追加したコード終わり--> 13</configuration>
試したこと
こちらのサイトを参考に、App.Configにコードを追加しました。→DLLの配置場所を変更する
補足情報(FW/ツールのバージョンなど)
Visual Studio 2017
※16時16分追記
パスを絶対参照で指定したところ動きました。
しかし、できれば相対参照で読み込みたいため、引き続き質問を続けさせてくださいm(_ _)m
C#
1 [DllImport(@"dll\hogehoge.dll")]
17:36分追記
追加するDLLはC++のものです。
プロジェクトの参照への追加は失敗します。
読み込み部分
C#
1 [DllImport("hogehoge.dll")] 2
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/02 22:40