質問: やりたいこと ------- Oracle.ManagedDataAccess.dllを含む複数のライブラリを参照したexeファイルを、ILMergeを使用してひとつのexeファイルにまとめたい。 参照するdllは.NET Frameworkに含まれるもの以外全てローカルコピーしており、exeと同じディレクトリに存在する状態。 試したこと ------ ILMergeを使用して以下のコマンドを実行した。 ``` ILMerge /ndebug /targetplatform:v4 /wildcards /out:hoge.exe hogehoge.exe *.dll ``` 発生しているエラー ---------- > > An exception occured during merging: > > Unresolved assembly reference not allowed: Oracle.ManagedDataAccessIOP. > > ~以下スタックトレース~ > > > 自分で調べても、`/targetplatform:v4`が不足している場合に発生するエラーという記事しか見つかりませんでした。 どうかよろしくお願いいたします。
回答: > > 参照するdllは.NET Frameworkに含まれるもの以外全てローカルコピーしており、exeと同じディレクトリに存在する状態。 > > > ManagedDataAccess.dll はx86,x64共通で、ManagedDataAccess.dll が参照しているであろう ManagedDataAccessIOP.dll はx86用とx64用に分かれているのでドライバ通りのディレクトリ構造が必要なのではないでしょうか?