首页 文章

更改dll清单

提问于
浏览
0

我从我们的分包商那里获得了一个完整的vs2005项目,这取决于他们的其他几个项目 . 我没有得到那些项目的源文件,但我确实在bin / debug文件夹中有他们的dll(让我们称之为a.dll和b.dll) . 我将这些dll复制到\ lib文件夹中,并将引用更改为指向那里 . 我现在遇到的问题是a.dll和b.dll依赖于我们正在开发的产品的特定版本,我们的系统安装了不同的版本 .

是否有一个简单的方法来打开a.dll和b.dll并更改其清单以定位我们的产品版本?或者更好 - 让它们不依赖于特定版本?

1 回答

  • 0

    你可以使用Assembly Binding Redirection使所需版本实际加载你已经拥有的版本吗?

    例如在你的app.settings文件中,有这样的东西:

    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="myAssembly"
                              publicKeyToken="32ab4ba45e0a69a1"
                              culture="en-us" />
            <bindingRedirect oldVersion="1.0.0.0"
                             newVersion="2.0.0.0"/>
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>
    

相关问题