【问题标题】:"Unable to create directory" error with "Access to path is denied." when building a solution in Visual Studio“无法创建目录”错误与“访问路径被拒绝”。在 Visual Studio 中构建解决方案时
【发布时间】:2014-09-24 20:20:02
【问题描述】:

我正在尝试在 VS2013 中构建一个 VS2010 C++ 项目(准确地说,是来自 Steinberg Vst SDK 的示例项目)并得到以下错误:

C:\程序文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(1235,5): 错误 MSB3191:无法创建目录“C:\Program Files (x86)\Common Files\VST3\Steinberg"。访问路径 'C:\Program Files (x86)\Common Files\VST3\Steinberg' 被拒绝。

我没有修改任何东西。我试图找到答案,但我发现的答案要么非常模糊,要么不适用于 C++。从错误中可以清楚地看出问题是我无法输出到 Program Files,因为它是只读的,那么如何更改输出目录?

编辑:我已经修改了项目属性 -> 配置属性 -> 常规选项卡中的“输出目录”字段。但是,错误保持不变。

EDIT2:解决了这个问题。链接器输出设置为 Program Files。

提前感谢您的回答。

【问题讨论】:

    标签: c++ build visual-studio-2013


    【解决方案1】:

    我不会改变它。问题不在于 Program Files 是只读的,问题在于您无法使用用户级别的权限对其进行写入。

    解决此问题的最佳方法是将您的输出更改为其他位置,例如在您将拥有权限的C:\Users\<yourname> 下。

    如果您真的无论如何都想在 Program Files 中执行此操作,您可以以管理员身份运行 Visual Studio。但我仍然建议您更改输出文件夹而不是这样做。

    【讨论】:

    • 这正是我的问题:如何将输出更改为不同的位置?
    • 右键单击您的项目并打开“属性”,在“编译”选项卡下您应该可以更改它。
    • 只有一个带有“输出目录”字段的“常规”选项卡。我已经改变了,错误保持不变。
    【解决方案2】:

    即使这篇文章相当陈旧:项目属性中的链接器选项卡包含一个输出文件变量,默认情况下类似于“$(CommonProgramFiles)\VST3\Steinberg\$(ProjectName)$(TargetExt)”。将其更改为您 / VS 具有写入权限的路径,并且事情应该会再次起作用。

    问候, G.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-06-22
      • 1970-01-01
      • 1970-01-01
      • 2020-01-02
      • 2019-11-25
      • 2014-01-31
      • 2016-01-18
      相关资源
      最近更新 更多