C# 如何在C中为DLL指定别名#

C# 如何在C中为DLL指定别名#,c#,dll,C#,Dll,我在我的C#项目中添加了一个DLL“first.DLL”作为引用,该项目反过来使用另一个遗留DLL“second.DLL” “first.dll”要求“second.dll”位于同一文件夹中。如果我将“second.dll”移动到另一个文件夹,则“first.dll”会给出错误信息 有没有办法在我的应用程序中定义“second.dll”路径 我无法访问这两个dll的源代码。您可以尝试在应用程序配置中使用(假设second.dll是.NET程序集) 链接文章中的示例: <configurat

我在我的C#项目中添加了一个DLL“first.DLL”作为引用,该项目反过来使用另一个遗留DLL“second.DLL”

“first.dll”要求“second.dll”位于同一文件夹中。如果我将“second.dll”移动到另一个文件夹,则“first.dll”会给出错误信息

有没有办法在我的应用程序中定义“second.dll”路径

我无法访问这两个dll的源代码。

您可以尝试在应用程序配置中使用(假设second.dll是.NET程序集)

链接文章中的示例:

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
          <assemblyIdentity name="myAssembly"
                            publicKeyToken="32ab4ba45e0a69a1"
                            culture="neutral" />
          <codeBase version="2.0.0.0"
                    href="http://www.litwareinc.com/myAssembly.dll"/>
       </dependentAssembly>
    </assemblyBinding>
 </runtime>

您可以尝试在应用程序配置中使用(假设second.dll是.NET程序集)

链接文章中的示例:

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
          <assemblyIdentity name="myAssembly"
                            publicKeyToken="32ab4ba45e0a69a1"
                            culture="neutral" />
          <codeBase version="2.0.0.0"
                    href="http://www.litwareinc.com/myAssembly.dll"/>
       </dependentAssembly>
    </assemblyBinding>
 </runtime>


我根据需要的程序选择DLL解决了这个问题。一个简单的IF条件解决了这个问题。

我根据需要的程序选择DLL来解决这个问题。一个简单的IF条件起了作用。

这段旧代码怎么样?请查看是否为两个dll引用都设置了“如果更新,则复制到输出”。默认情况下,对于依赖程序集,Net希望在GAC或与exe相同的文件夹中查找。无法将两个dll的项目都设置为“复制到输出目录”吗?这段旧代码如何?请查看是否为两个dll引用都设置了“如果更新,则复制到输出”。默认情况下,对于依赖程序集,Net希望在GAC或与exe相同的文件夹中查找。不能将两个DLL的项目都设置为“复制到输出目录”吗?