【问题标题】:How do I set a path in Visual Studio?如何在 Visual Studio 中设置路径?
【发布时间】:2022-01-02 07:59:48
【问题描述】:

如何设置 DLL 文件的路径,以便在 Visual Studio 中单独搜索特定项目?

现在我将它设置在环境 path 变量中,但我希望更好地控制它。

【问题讨论】:

  • 你的意思是你试图在调试器中运行一些东西,并且因为 DLL 不在 PATH 中,所以它没有找到它们?
  • 您是在谈论调试器还是从 Window 的 shell 运行应用程序?
  • 另外,您是在谈论您编写的 DLL 还是您正在使用的第 3 方 DLL?
  • 我在询问 abt 运行在调试或发布文件夹中创建的 exe

标签: visual-studio visual-c++ development-environment


【解决方案1】:

在 MSDN 中搜索“How to: Set Environment Variables for Projects”。 (对于那些赶时间的人,Project>Properties>Configuration Properties>Debugging "Environment""Merge Environment" 属性。)

语法是NAME=VALUE,可以使用宏(例如,$(OutDir))。

例如,将 C:\Windows\Temp 添加到 PATH:

PATH=C:\WINDOWS\Temp;%PATH%

同样,将 $(TargetDir)\DLLS 附加到 PATH:

PATH=%PATH%;$(TargetDir)\DLLS

【讨论】:

  • 效果很好,但你知道如何为 C# 做同样的事情吗?
  • 请确保不要在“=”号周围放置空格。
  • 我在 Visual Studio 2017 中没有找到这个,谁能告诉我在哪里可以找到它?
  • 这个答案最符合我在使用 Visual Studio 2019 时看到的。
  • 如何在 premake 中做到这一点?
【解决方案2】:

你有几个选择:

  • 您可以将 DLL 的路径添加到工具 > 选项 > 项目和解决方案 > VC++ 目录下的可执行文件设置中(但仅用于构建、执行或调试here
  • 您可以将它们添加到全局 PATH 环境变量中
  • 您可以使用我在here 中描述的批处理文件启动 Visual Studio,并在其中操作路径
  • 您可以将 DLL 复制到可执行文件的目录中:-)

【讨论】:

  • 使用 Visual Studio 2010,您可以进入项目的属性页,它位于“配置属性 -> VC++ 目录”下。
  • @Kevin 这是用于构建,而不是用于运行或调试
  • Bullet 1 在 VS Community 2015 中已弃用。“它现在作为用户属性表提供,默认添加到所有项目中。”
  • 在 VS 2019 中,您可以在 Project properties -> Common properties -> VC++ Directories -> Executable Directories 中设置它,您还可以添加项目属性表并将其设置在那里并将属性表添加到所有新项目。
  • 如果它不起作用,那么:Project properties -> Common properties -> Debugging -> Environment 添加这个 PATH=%PATH%; MY_DLL_DIRMY_DLL_DIR 替换为 DLL 目录,注意分号!
【解决方案3】:

如果您只需要为每个配置添加一个路径(调试/发布),您可以设置调试命令工作目录:

项目 |属性 |选择配置 |配置属性 |调试 |工作目录

对每个项目配置重复。

【讨论】:

    【解决方案4】:

    设置 PATH 变量,就像你正在做的那样。如果您从 IDE 运行程序,您可以通过调整项目属性中的调试选项来修改环境变量。

    如果 DLL 的命名方式使您不需要为不同的配置类型使用不同的路径,则可以将路径添加到系统 PATH 变量或 Visual Studio 的工具 | 中的全局变量中。选项。

    【讨论】:

      【解决方案5】:

      没有一个答案完全解决了我的问题(我正在运行的解决方案文件试图找到 xcopy 以在生成后复制 dll)。

      为我解决的问题是进入菜单“项目 -> 属性”

      然后在打开的窗口中选择左侧窗格:“配置属性 -> VC++ 目录

      在“常规”下的右侧窗格中选择“可执行目录”

      然后添加:

      $(SystemRoot)\system32;$(SystemRoot);$(SystemRoot)\System32\Wbem;$(SystemRoot)\System32\WindowsPowerShell\v1.0\;$(ExecutablePath)
      

      【讨论】:

        猜你喜欢
        • 2021-10-27
        • 1970-01-01
        • 2021-06-10
        • 1970-01-01
        • 2011-01-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多