C#如何通過(guò)probing指定dll尋找文件夾詳解
前言
我們?cè)诤艽蟮捻?xiàng)目開(kāi)發(fā),會(huì)發(fā)現(xiàn)項(xiàng)目引用的 dll 會(huì)很多,我想要按照不同的功能,將不同的 dll 放在不同的文件夾
簡(jiǎn)單的方法是通過(guò)修改 App.config 文件指定文件夾,如將文件移動(dòng)到 abc\12 的文件夾里面,可以在 App.config 添加代碼
<?xml version="1.0" encoding="utf-8" ?> <configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <probing privatePath="abc\12" /> </assemblyBinding> </runtime> </configuration>
如創(chuàng)建一個(gè)簡(jiǎn)單的項(xiàng)目,此時(shí)項(xiàng)目引用一個(gè)dll 如 doubi.dll 這個(gè)項(xiàng)目運(yùn)行的時(shí)候輸出的文件有 lindexi.exe 和 doubi.dll 文件
這時(shí)需要將 doubi.dll 移動(dòng)到文件夾 abc\12 里面
lindexi.exe abc\12\doubi.dll
打開(kāi) App.config 添加上面的代碼就可以
如果有兩個(gè)不同的dll需要放在兩個(gè)不同的文件夾,如 walter.dll 需要放在 walter 文件夾
在 <probing privatePath="abc\12" />
里面使用分號(hào)表示不同的文件夾 probing privatePath="abc\12;walter"
不同的文件夾之間用分號(hào)分開(kāi)
<?xml version="1.0" encoding="utf-8" ?> <configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <probing privatePath="abc\12;walter" /> </assemblyBinding> </runtime> </configuration>
這個(gè) App.config 在編譯之后會(huì)在被修改為 程序集名.exe.config 在輸出文件夾找到 xx.exe.config 可以通過(guò)修改這個(gè)文件在編譯之后修改 dll 的尋找文件夾
如果是對(duì)于 C++ 的 dll 需要做特殊引用,如需要區(qū)分 x86 和 x64 請(qǐng)看C# 如何在項(xiàng)目引用x86 x64的非托管代碼
不能直接添加一個(gè) x86 文件和一個(gè) x64 文件夾,通過(guò) privatePath 同時(shí)指定文件夾的方式
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
c#使用DotNetZip封裝類操作zip文件(創(chuàng)建/讀取/更新)實(shí)例
DotnetZip是一個(gè)開(kāi)源類庫(kù),支持.NET的任何語(yǔ)言,可很方便的創(chuàng)建,讀取,和更新zip文件。而且還可以使用在.NETCompact Framework中。2013-11-11c#下注冊(cè)表操作的一個(gè)小細(xì)節(jié)
c#下注冊(cè)表操作的一個(gè)小細(xì)節(jié)...2007-11-11c#調(diào)用arcgis地圖rest服務(wù)示例詳解(arcgis地圖輸出)
ArcGIS REST API提供了簡(jiǎn)單、開(kāi)放的接口來(lái)訪問(wèn)和使用ArcGIS Server發(fā)布的服務(wù)。使用ArcGIS REST API通過(guò)URL可以獲取和操作每一個(gè)服務(wù)中的所有資源和操作2013-12-12C#實(shí)現(xiàn)手機(jī)拍照并且保存水印照片
這篇文章主要介紹了C#實(shí)現(xiàn)手機(jī)拍照并且保存水印照片的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11