最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#把dll分別放在指定的文件夾的方法步驟

 更新時間:2022年05月20日 09:25:43   作者:故里2130  
本文主要介紹了C#把dll分別放在指定的文件夾的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

C#客戶端程序,生成后是一個exe,如果帶有大量的dll,那么dll和exe會混亂在一起,看起來非常混亂,我們可以建立一個文件夾,把dll放進(jìn)去,這樣看起來就非常的清晰美觀。

一共有二種方法

第一種,配置方法。

1.我們建立一個winform程序,對2個dll分別引用,調(diào)用里面的方法

生成后的文件是這樣的

2.打開App.config文件夾,其中dll和dll/2相當(dāng)于文件夾

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
    </startup>
	<runtime>
		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
			<!--<publisherPolicy apply="yes" />這句不要也是可以的-->
			<probing privatePath="dll;dll/2" />
		</assemblyBinding>
	</runtime>
</configuration>

3.選擇所有的dll,把復(fù)制本地設(shè)置成 FALSE

4.打開項目的exe路徑,分別建立dll文件夾,把其中一個dll放進(jìn)去 

建立dll/2文件夾,把另一個dll放進(jìn)去

5.文件夾的效果

WindowsFormsApp4.exe

WindowsFormsApp4WindowsFormsApp4.exe.config

dll

...../ClassLibrary1.dll

...../2/ClassLibrary2.dll

6.效果,這樣就比較好看一些。

第二種,代碼方法

 1.同樣建立一個項目,選擇所有的dll,把復(fù)制本地設(shè)置成 FALSE

2.在窗體的初始化出寫入

AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
  static System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
        {
            string path = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"dll2\");
            path = System.IO.Path.Combine(path, args.Name.Split(',')[0]);
            path = String.Format(@"{0}.dll", path);
            return System.Reflection.Assembly.LoadFrom(path);
        }

3.在項目的debug文件夾中,建立代碼中的名字dll2文件夾,把所有的dll扔進(jìn)去即可。

 4.代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            ClassLibrary1.Class1 c = new ClassLibrary1.Class1();
            ClassLibrary2.Class1 c1 = new ClassLibrary2.Class1();
 
            MessageBox.Show(c.A() + c1.B());
        }
 
        /// <summary>
        /// 對外解析dll失敗時調(diào)用
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        /// <returns></returns>
        static System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
        {
            string path = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"dll2\");
            path = System.IO.Path.Combine(path, args.Name.Split(',')[0]);
            path = String.Format(@"{0}.dll", path);
            return System.Reflection.Assembly.LoadFrom(path);
        }
    }
}

到此這篇關(guān)于C#把dll分別放在指定的文件夾的方法步驟的文章就介紹到這了,更多相關(guān)C# dll指定文件夾內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#使用log4net記錄日志

    C#使用log4net記錄日志

    本文詳細(xì)講解了C#使用log4net記錄日志的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • c#實現(xiàn)在圖上畫漢字

    c#實現(xiàn)在圖上畫漢字

    這篇文章主要介紹了c#實現(xiàn)在圖上畫漢字方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 基于C#解決庫存扣減及訂單創(chuàng)建時防止并發(fā)死鎖的問題

    基于C#解決庫存扣減及訂單創(chuàng)建時防止并發(fā)死鎖的問題

    這篇文章主要介紹了基于C#解決庫存扣減及訂單創(chuàng)建時防止并發(fā)死鎖的問題,很多開發(fā)人員對于這個問題的排查起來是比較困難的,而生產(chǎn)生的原因多種多樣,很多人認(rèn)是因為表中的數(shù)據(jù)太多了同時操作的人多人才會產(chǎn)生這種錯誤,下面我們來還原一下死鎖的過程
    2022-05-05
  • C#調(diào)用DeepSeek?API的兩種實現(xiàn)方案

    C#調(diào)用DeepSeek?API的兩種實現(xiàn)方案

    DeepSeek(深度求索)?最近可謂火爆的一塌糊涂,具體的介紹這里不再贅述,您可以各種搜索其信息,即使您不搜索,只要您拿起手機,各種關(guān)于?DeepSeek?的新聞、資訊也會撲面而來的推送到您面前,本文給大家介紹了C#調(diào)用DeepSeek?API的兩種實現(xiàn)方案,需要的朋友可以參考下
    2025-02-02
  • C#中的枚舉類型(Enum)介紹

    C#中的枚舉類型(Enum)介紹

    這篇文章介紹了C#中的枚舉類型(Enum),文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • 關(guān)于C#操作文件路徑(Directory)的常用靜態(tài)方法詳解

    關(guān)于C#操作文件路徑(Directory)的常用靜態(tài)方法詳解

    這篇文章主要給大家介紹了關(guān)于C#操作文件路徑(Directory)的常用靜態(tài)方法,Directory類位于System.IO 命名空間,Directory類提供了在目錄和子目錄中進(jìn)行創(chuàng)建移動和列舉操作的靜態(tài)方法,需要的朋友可以參考下
    2021-08-08
  • 通過C#實現(xiàn)在Word中插入或刪除分節(jié)符

    通過C#實現(xiàn)在Word中插入或刪除分節(jié)符

    在Word中,分節(jié)符是一種強大的工具,用于將文檔分成不同的部分,每個部分可以有獨立的頁面設(shè)置,如頁邊距、紙張方向、頁眉和頁腳等,本文將介紹如何使用一個免費的.NET庫通過C#實現(xiàn)插入或刪除Word分節(jié)符,需要的朋友可以參考下
    2024-08-08
  • WinForm ToolTip使用方法小結(jié)

    WinForm ToolTip使用方法小結(jié)

    這篇文章主要介紹了WinForm ToolTip使用方法小結(jié),對C#初學(xué)者有一定的借鑒參考價值,需要的朋友可以參考下
    2014-08-08
  • C#清理非托管對象實例分析

    C#清理非托管對象實例分析

    這篇文章主要介紹了C#清理非托管對象的方法,結(jié)合實例形式詳細(xì)分析了C#清理非托管對象釋放資源的相關(guān)原理與實現(xiàn)技巧,需要的朋友可以參考下
    2016-02-02
  • C# WinForm國際化實現(xiàn)的簡單方法

    C# WinForm國際化實現(xiàn)的簡單方法

    這篇文章主要介紹了C# WinForm國際化實現(xiàn)的簡單方法,有需要的朋友可以參考一下
    2014-01-01

最新評論

杭州市| 塔城市| 布拖县| 仙居县| 绍兴市| 泽州县| 辽宁省| 临猗县| 河南省| 辽阳市| 神池县| 商都县| 山丹县| 紫阳县| 泸西县| 额济纳旗| 堆龙德庆县| 金昌市| 林州市| 襄樊市| 修武县| 靖安县| 辽宁省| 南郑县| 南丰县| 彰化市| 都江堰市| 普兰店市| 德格县| 淮南市| 精河县| 浦县| 丹棱县| 临安市| 云浮市| 江西省| 天水市| 防城港市| 海阳市| 桂平市| 辛集市|