極速下載站 —— 提供優(yōu)質(zhì)軟件下載服務(wù),感受全新的極速下載體驗(yàn)!

最近更新 | 軟件專題 | 軟件分類(lèi) | 軟件排行

您的位置:極速下載站資訊首頁(yè)軟件教程軟件問(wèn)答 → 讓.NET程序兼容不同版本的Dll文件

讓.NET程序兼容不同版本的Dll文件

時(shí)間:2012-03-12 17:49:40  作者:不思議游戲  瀏覽量:58

前段時(shí)間寫(xiě)的一個(gè)WinForm的.NET程序。因?yàn)橐昧瞬簧俚膸?kù)文件,但是最近這些庫(kù)文件因?yàn)樾拚艘恍〣ug和算法。但是主的程序文件沒(méi)有怎么改動(dòng)。所以就不像把這個(gè)主程序重新編譯了。于是就把所有的新版DLL文件拷貝到運(yùn)行目錄下,希望主程序能夠直接調(diào)用新版的庫(kù)文件。結(jié)果發(fā)現(xiàn)原來(lái)這些庫(kù)文件都用Strong Name簽了名的。主程序一調(diào)用就出錯(cuò),說(shuō)找不到該版本的文件。

后來(lái)查了一下MSDN,發(fā)現(xiàn)只要在config里面加入runtime節(jié)點(diǎn)就可以了。

 <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>

不過(guò)這有個(gè)前提條件就是這兩個(gè)DLL的PublicKeyToken是一樣的,就是需要用同一個(gè)sn文件簽名的才行。

當(dāng)然如果你的庫(kù)文件根本就沒(méi)有用Strong Name簽名的話,就不用考慮版本問(wèn)題了。

相關(guān)資訊

相關(guān)軟件

軟件問(wèn)答排行
最新軟件問(wèn)答
軟件教程分類(lèi)

更多常用電腦軟件

更多同類(lèi)軟件專題