1. 程式人生 > >讓.NET程式相容不同版本的Dll檔案

讓.NET程式相容不同版本的Dll檔案

把所有的新版DLL檔案拷貝到執行目錄下,希望主程式能夠直接呼叫新版的庫檔案。 只要在config裡面加入runtime節點就可以完成主程式一呼叫。

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MyAssembly"
publicKeyToken="2b7c3a3291de04"
culture="neutral" />
<bindingRedirect oldVersion="3.0.0.8"
newVersion="4.1.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
不過這有個前提條件就是這兩個DLL的PublicKeyToken是一樣的,就是需要用同一個sn檔案簽名的才行。
當然如果你的庫檔案根本就沒有用Strong Name簽名的話,就不用考慮版本問題了。

相關推薦

.NET程式相容不同版本Dll檔案

把所有的新版DLL檔案拷貝到執行目錄下,希望主程式能夠直接呼叫新版的庫檔案。 只要在config裡面加入runtime節點就可以完成主程式一呼叫。 <runtime> <assemblyBinding xmlns="urn:schemas-microso

android 相容不同版本懸浮框許可權解決

1,4.4以下使用TYPE_SYSTEM_ALERT,需要許可權android.permission.SYSTEM_ALERT_WINDOW; 2,4.4到7.0,使用TYPE_TOAST,不需要額外許可權;(既然TYPE_TOAST不需要

array_column()函式相容版本PHP

array_column 用於獲取二維陣列中的元素(PHP 5.5新增函式),但我們有時候需要在低版本的PHP環境中使用,只要做一個小的改造即可... 自定義一個函式i_array_column(),寫到TP的Comm

如何檢測應用程式呼叫了哪些DLL檔案

之前所用的檢測工具是Dllshow,後來突然不能用了,VS以前有Depends,後來高階版本也沒了。最近找到一種簡單方便的方法,利用windowsx系統自帶的功能。 執行你想知道的應用程式,然後在進入dos視窗(開始->執行->command),輸入命令:ta

VS2013中為C++程式生成lib和dll檔案

dll的優點 程式碼複用是提高軟體開發效率的重要途徑。只要某部分程式碼具有通用性,就可將它構造成相對獨立的功能模組並在之後的專案中重複使用。比較常見的例子是各種應用程式框架,ATL、MFC等,它們都

.Net 程式脫離.net framework框架執行(ZZ)

Net框架目前逐步在普及了,仍然有很多人在尋找如何讓.NET程式脫離.NET框架的方法。現成的工具有 Xenocode 的postbuidle或者vas,還有 Salamander .NET Linker。 Net框架目前逐步在普及了,仍然有很多人在尋找如何讓.NET

錯誤: 未能完成程式集的安裝(hr = 0x8007000b),.net程式關於使用Oracle.DataAccess.dll不同版本x86和x64問題,即oracle odp.net 32位/64位版本的問題

如果你的機器上安裝了odp.net,且確信machine.config也有類似以下結節:(64位+.net 4.0環境下,machine.config可能會有4份,分別對應於.net2.0/4.0的32/64位版本,要每個都檢查過去哦) <DbProviderFactories>

用.Net Reactor5打包加密dll檔案和exe程式

軟體功能: 1.可將dll檔案進行加密,防止反編譯。 2.可將整個debug目錄下exe和引用的dll檔案都整合加密到一個exe檔案中 .Net Reactor破解版下載地址:https://download.csdn.net/download/horseroll/10745242&nb

.net core win7和win10釋出的dll不同以及缺少相關dll檔案

.NET Core 應用程式部署分為2中情況: 依賴框架的部署。 顧名思義,依賴框架的部署 (FDD) 依賴目標系統上存在共享系統級版本的 .NET Core。 由於已存在 .NET Core,因此應用在 .NET Core 安裝程式間也是可移植的。 應用僅包含其自己的

oracle不同版本之間資料來源檔案相容的解決方案

1.不相容原因 以oracle12c為例,匯出的dmp檔案無法匯入至oracle11g或者oracle10g的資料庫中,會報錯“IMP-00010:不是有效的匯出檔案,頭部驗證失敗”。這是因為高版本匯

同一個解決方案或有依賴關系的兩個項目引用同名但不同版本DLL

web bind 節點 20px 博客 fig 朋友 ase 方案 問題描述 我們最近在使用Redis作Session的集中化,中間碰到了一個如下問題:我們有一些項目比較老,引用了NewtonJson的4.0.3.0版本的DLL,但是Redis提供的C#集成DL

C程序中兩個不同版本的庫共存

lua compile c 原文連接:http://blog.gotocoding.com/archives/875今天有同學提出,如何在一個C程序中讓兩個不同版本的庫共存。首先想到的方案是,把其中一個版本的庫函數全部重命名,比如把每一個函數名都加一個_v2的後綴。人工替換到沒什麽,但是如果函數個

單點登錄跳轉失敗(原因是 主票據申請子票據失敗) asp.net 同站點下不同應用間不同版本Framework問題

大牛 www 後臺 images 不同 遇到 加密 網上 兩種 單點登錄跳轉失敗(原因是 主票據申請子票據失敗) asp.net 同站點下不同應用間不同版本Framework問題 今天遇到一個問題,在主站點現在配置的應用和主站點登錄會話狀態不能共享,進入子站點應用時,還

Asp.Net 學習筆記(IIS不同版本和Asp.Net

work rem 相同 出發 資源 iis 其中 筆記 http  主要目的是在網上記錄一下學習筆記,如有不對,請指出 謝謝!!  iis5.x:   存在問題,inet info收到動態請求後,aspnt_isapi.dll會被加載到inetinfo.e

(已解決)拷貝dll檔案到另一個專案,編譯不報錯,執行報錯“未能載入檔案程式集...”

未能載入檔案或程式集“JUtility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”或它的某一個依賴項。試圖載入格式不正確的程式。   需要注意該dll生成的目標平臺:右擊專案-生成-目標平臺, 引用這個dll的專案

.NET快速資訊化系統開發框架 V3.2-&gt;Web版本新增“檔案管理中心”集上傳、下載、檔案共享等一身,非常實用的功能

  檔案中心是3.2版本開始新增的一個非常實用功能,可以歸檔自己平時所需要的檔案,也可以把檔案分享給別人,更像一個知識中心。檔案中心主介面如下圖所示,左側“我的網盤”展示了使用者對檔案的分類,只能自己看到,“公共盤”中的檔案所有使用者都可以看到。選擇一個分類,右側列出了當前分類的所有檔案(第一列

.net Reactor之dll檔案反編譯混淆

.net Reactor之dll檔案反編譯混淆 .net Reactor的主要功能: 1.是對dll檔案、exe檔案進行反編譯混淆 2.對dll進行內部加鎖,限制其使用的固定機器、固定時間、部署次數 2.建立證書檔案,用證書管理其限制的機器、時間、部署次數 頁面: 混淆方法: 1.在file

mfc程式打包後在其他電腦上安裝缺少dll檔案解決辦法

1、缺少檔案 mfc100d.dll msvcp100d.dll msvcr100d.dll 2、兩種解決辦法; 從釋出打包程式電腦上c盤拷貝這三個檔案,放到安裝電腦上c盤 如果是64位系統,則從C:\Windows\SysWOW64中拷貝,繼續放置到C:\W

專案裡不同版本之間呼叫DLL,引發的問題

如:Assembly 'SPPD.Backend.DataAccess.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is marked with the AllowPartiallyTrustedCallersAttrib

VS2013Release程式生成pdb檔案 進行debug除錯

轉載:https://blog.csdn.net/u013600225/article/details/51427791 用VS除錯Release的程式,發現無法除錯。其實,並不是Release的程式不能除錯,而是沒有讓Release的程式生成pdb檔案,VS無法載入pdb檔案而無法除錯程式。