フォルダ構成
今回,Dllの置き場所は,exeの作られるフォルダの直下の「dll」フォルダにまとめることにする。
Dllの読み込み場所をApp.configで指定
assemblyBindingタグ内にprobingタグを指定すればよい。
このconfigファイルの中身を見てアプリはdllフォルダ内のdllを読みに行く。
<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> </startup> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <probing privatePath="dll"/> </assemblyBinding> </runtime> </configuration>
dllフォルダに.dllファイルを移動させる
ビルド後のイベントを使用して,dllファイルを移動させるバッチを作成する。
if not exist "$(TargetDir)dll" mkdir "$(TargetDir)dll" copy "$(TargetDir)" "$(TargetDir)dll" cd "$(TargetDir)dll" del *.exe del *.config cd "$(TargetDir)" del *.dll del *.xml del /s *.pdb