欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# 嵌入dll 的方法

 更新時間:2018年07月08日 17:11:41   作者:樹蔭下的陽光  
這篇文章主要介紹了C# 嵌入dll 的方法,本文圖文并茂給大家及時的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

在很多時候我們在生成C#exe文件時,如果在工程里調用了dll文件時,那么如果不加以處理的話在生成的exe文件運行時需要連同這個dll一起轉移,相比于一個單獨干凈的exe,這種形式總歸讓人不爽,那么有辦法讓生成的軟件中直接就包含這個dll文件嗎,這樣就可以不用dll跟著exe走了,避免單獨不能運行的情況。

        答案是有的!  

      在工程項目目錄下找到Resources.resx文件并點擊,然后按下面操作,添加資源,將你要加入的dll添加進來。       

      操作完成后,就會在下面的內容框里看到你添加進來的dll。    

        然后在工程中加入下面這個函數(shù)代碼:

 System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
    {
      string dllName = args.Name.Contains(",") ? args.Name.Substring(0, args.Name.IndexOf(',')) : args.Name.Replace(".dll", "");
      dllName = dllName.Replace(".", "_");
      if (dllName.EndsWith("_resources")) return null;
      System.Resources.ResourceManager rm = new System.Resources.ResourceManager(GetType().Namespace + ".Properties.Resources", System.Reflection.Assembly.GetExecutingAssembly());
      byte[] bytes = (byte[])rm.GetObject(dllName);
      return System.Reflection.Assembly.Load(bytes);
    }

在InitializeComponent();之前調用。這樣生成的exe就包含這個dll文件啦。

public Form1()
    {
      this.StartPosition = FormStartPosition.CenterScreen;
      AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(CurrentDomain_AssemblyResolve);
      InitializeComponent();
    }

總結

以上所述是小編給大家介紹的C# 嵌入dll 的方法,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

相關文章

  • 解決C# X64應用程序中讀取WParam溢出的問題

    解決C# X64應用程序中讀取WParam溢出的問題

    C#應用程序是AnyCPU的,在一段處理鼠標滾輪WM_MOUSEWHEEL的代碼里碰到溢出的問題OverflowException
    2013-04-04
  • C# 線程同步詳解

    C# 線程同步詳解

    本文主要介紹了C#中線程同步的相關知識。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • C# Winform多屏幕多顯示器編程技巧實例

    C# Winform多屏幕多顯示器編程技巧實例

    這篇文章主要介紹了C# Winform多屏幕多顯示器編程技巧實例,本文直接給出代碼實例,需要的朋友可以參考下
    2015-06-06
  • C#實現(xiàn)讀寫CSV文件的方法詳解

    C#實現(xiàn)讀寫CSV文件的方法詳解

    項目中經常遇到CSV文件的讀寫需求,其中的難點主要是CSV文件的解析。本文會介紹CsvHelper、TextFieldParser、正則表達式三種解析CSV文件的方法,需要的可以參考一下
    2022-06-06
  • C#中函數(shù)的創(chuàng)建和閉包的理解

    C#中函數(shù)的創(chuàng)建和閉包的理解

    這篇文章主要介紹了C#中函數(shù)的創(chuàng)建和閉包的理解,本文講解了動態(tài)創(chuàng)建函數(shù)、匿名函數(shù)不足之處、理解c#中的閉包、閉包的優(yōu)點等內容,需要的朋友可以參考下
    2015-04-04
  • C#的四個基本技巧

    C#的四個基本技巧

    C#的四個基本技巧...
    2007-03-03
  • C#如何訪問共享文件夾或者磁盤

    C#如何訪問共享文件夾或者磁盤

    這篇文章主要為大家詳細介紹了C#訪問共享文件夾或者磁盤,需要用戶名密碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • C# wx獲取token的基本方法

    C# wx獲取token的基本方法

    這篇文章主要為大家詳細介紹了C# wx獲取token的基本方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • C# try catch代碼塊不起效果的解決方法

    C# try catch代碼塊不起效果的解決方法

    本文主要介紹了C# try catch代碼塊不起效果的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • C#如何對多線程、多任務管理(demo)

    C#如何對多線程、多任務管理(demo)

    這篇文章主要通過一個小demo介紹了C#如何對多線程、多任務管理,需要的朋友可以參考下
    2015-07-07

最新評論