C# 如何在Visual Studio/C中为DLL依赖项定义工作目录#

C# 如何在Visual Studio/C中为DLL依赖项定义工作目录#,c#,visual-studio-2008,working-directory,dll-reference,C#,Visual Studio 2008,Working Directory,Dll Reference,我有一个可执行的文件,例如从C:运行。可执行文件引用了另一个目录中的一些DLL,比如C:\MyDLS。问题是,这些引用的DLL再次依赖于存储在另一个目录中的其他DLL。我可以告诉Visual Studio在哪里查找这些丢失的DLL吗? 非常感谢 我以前遇到过这个问题,我创建了一个构建后脚本,将所有需要的DLL复制到可执行文件的目录中 比如: 复制“$(ProjectDir)Resources\dll\yourDLL.dll”“$(TargetDir)yourDLL.dll”通过在配置中设置这些值

我有一个可执行的文件,例如从C:运行。可执行文件引用了另一个目录中的一些DLL,比如C:\MyDLS。问题是,这些引用的DLL再次依赖于存储在另一个目录中的其他DLL。我可以告诉Visual Studio在哪里查找这些丢失的DLL吗?
非常感谢

我以前遇到过这个问题,我创建了一个构建后脚本,将所有需要的DLL复制到可执行文件的目录中

比如:
复制“$(ProjectDir)Resources\dll\yourDLL.dll”“$(TargetDir)yourDLL.dll”

通过在配置中设置这些值,可以引用应用程序程序程序集加载规则之外的程序集。以下是来自以下站点的示例配置文件:


工具)以使其工作


了解运行时是如何运行的也是很有用的,也许你可以利用它,而不是千方百计地使用

,谢谢,但要复制的DLL可能有数百个。其他想法?这将告诉您Windows用于查找DLL的搜索路径。因此,您可以将C:\DLLs目录添加到PATH变量中。唯一的问题当然是它在搜索路径列表中的位置较低……因此,如果它首先在其他位置找到DLL,这将取代它。几年前,我在一个项目中做过类似的事情,但它并不漂亮。:)祝你好运谢谢,我喜欢你的建议。使用System.Reflection.Assembly可能是我问题的答案。我试试看。谢谢
<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <dependentAssembly>
            <assemblyIdentity name="MyAssembly2"  culture="neutral" publicKeyToken="307041694a995978"/>
            <codeBase version="1.0.1524.23149" href="FILE://C:/Myassemblies/MyAssembly2.dll"/>
         </dependentAssembly>
      </assemblyBinding>
   </runtime>
</configuration>