【问题标题】:Cannot open source file in visual studio 2015无法在 Visual Studio 2015 中打开源文件
【发布时间】:2016-09-11 19:07:14
【问题描述】:

我正在尝试使用 Visual Studio Community 2015 在 Windows 中编译 OBS studiothis tutorial。我在 Visual Studio 中创建了一个项目,并通过将文件拖到解决方案资源管理器中来将整个 git repo 复制到项目中。该项目依赖于 libav、x264 和 curl。它们以 .lib、.dll 和头文件的形式给出。

问题是我不断收到“无法打开源文件”。我将头文件放在与 dll 和 lib 不同的文件夹中(dll 和 lib 在同一个文件夹中)。在项目设置->VC++ 目录下,我添加了包含目录,还添加了库目录。然后我在 Linker->input->additional Dependencies 下专门添加了 lib。然后我将包含 .dll 文件的目录添加到环境变量 PATH 中。

在这一切之后,我仍然不断收到相同的错误,以及其他一些错误。这是一个有问题的源文件的屏幕截图。

这些是我的设置。

对于路径,我尝试了使用和不使用尾部正斜杠。

【问题讨论】:

  • 确保更改项目设置的配置与构建时相同。我看到了 Debug/Win32 和 Debug/x86。不确定那些是否相同。检查包含文件夹是否包含#include 子句中/ 之前的文件夹,并且此文件夹包含您包含的文件。身体上。我的意思是去那里看看是否存在。

标签: c++ windows dll visual-studio-2015


【解决方案1】:

编辑: 对其他包含目录使用 C/C++ 设置而不是 VC++ 设置。

可能阻碍您的是 VS 侧边栏中的那些文件夹图标实际上与文件系统无关。它们是过滤器,不会根据实际目录而改变。

这是对 Drop 建议的另一种解释——检查文件是否真的在你认为的位置。

【讨论】:

  • 头文件相对于我放在包含目录中的路径。 Visual Studio 找到它们并打开。由于这些是库,因此没有源代码。这就是为什么我对如何正确实施它们有点迷茫。 lib 和 DLL 文件的命名也不完全像头文件,所以这也增加了我的困惑。
  • 您的错误现在与 .lib 或 .dll 无关(到目前为止)。您可以尝试使用 C/C++ 而不是 VC++ 来获取其他包含。您也可以尝试使用“”而不是 . 来包含目录
  • 我发现了问题。正如您所说,我只需将附加目录添加到 C/C++ 和链接器而不是“VC++ 目录”。如果您可以更改答案以反映这一点,那么我可以接受它作为答案。谢谢!
【解决方案2】:

就我而言,我已经添加了包含库,但这还不够。一旦我在项目属性中将配置从 x86 切换到 x64,错误就消失了。

【讨论】:

  • 这里也一样。 MS 经典!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多