DLLを別フォルダで管理する
サンプル
変更前
変更後
│ ConsoleApp1.deps.json
│ ConsoleApp1.dll.config
│ ConsoleApp1.exe
│ ConsoleApp1.pdb
│ ConsoleApp1.runtimeconfig.json
│
└─lib
ConsoleApp1.dll ←dllをフォルダ分け
│ ConsoleApp1.dll.config
│ ConsoleApp1.exe
│ ConsoleApp1.pdb
│ ConsoleApp1.runtimeconfig.json
│
└─lib
ConsoleApp1.dll ←dllをフォルダ分け
DLLファイルの場所の設定
①「追加」から②「新しい項目」を選択します。
「アプリケーション構成ファイル」をクリックすると「App.config」が出来ます。
※もし、ここで「App2.config」になっているとうまく行かないので注意して下さい。
※もし、ここで「App2.config」になっているとうまく行かないので注意して下さい。
App.config
<?xml version="1.0" encoding="utf-8" ?>
<probing privatepath="lib">
「lib」はDLLファイルを入れるフォルダ名です。
好きなフォルダ名に変えることが出来ます。
ビルド後DLLをDLLフォルダに格納する
プロパティから設定を開きます。
文字イベントの中で記入します。
ビルド前のイベント
rd /s /q $(TargetDir)lib
mkdir $(TargetDir)lib
「lib」のフォルダの配下を削除します(再ビルド時対応)
rd がフォルダー削除。
/s がサブフォルダーも含めるという意味。
/q が確認メッセージ無しという意味。
「lib」のフォルダを作成します。
rd がフォルダー削除。
/s がサブフォルダーも含めるという意味。
/q が確認メッセージ無しという意味。
「lib」のフォルダを作成します。
ビルド後のイベント
move $(TargetDir)*.dll $(TargetDir)lib\
すべてのdllをlibに移動させます。
上記のように分けましたが、ビルド後に同じ感じにしてもいいのかな?って思います。
コマンド打ちならもっといろいろなコマンドで楽できそうです。