不同 Visual Studio 版本中缺少 .dll

Missing .dll in different Visual Studio versions

我最近遇到了一个问题。我在 visual studio 2015 年创建了一个项目,使用在调试和发布模式下正确执行的 allegro5 库。

当我更改 visual studio 版本并开始使用 2019 版本时(同时我不得不格式化我的电脑并重新安装 only VS19)并加载项目,执行时显示缺少 msvc110d.dll 错误。

我试图找到一种方法使我的项目成为 "upgraded" 而不是查看旧版本的 msvc 来尝试查找较新的版本,但找不到任何东西。

我有没有办法更改一些设置以使我的项目期待更新版本的 msvc,或者我是否必须创建一个新项目并复制粘贴所有配置和 files/assets那个新项目?

谢谢大家

P.S 我知道如果我在该目录中获取 .dll 文件,则可以解决该错误,但这肯定是不好的做法。另外,您能否告诉我如何正确设置项目以防止将来出现此类问题?

我认为您需要在 Google 上找到 VS2015 可再发行组件并将其安装到您的计算机上。那应该可以解决它。

Windows动态库文件安装在c:\windows\system32目录下。可以在 c:\windows\syswow64 下找到 64 位 windows 中的 32 位 dll 文件。当您的 VC++ 开发的应用程序搜索 dll 时,它首先检查应用程序文件夹,然后检查系统文件夹。如果在这些位置找不到,将显示 "missing dll file" 错误。

通常,安装正确的 VC++ 可再发行组件即可。但有时不匹配仍然存在,因为您使用的 sdk 与系统 dll 不一致。您不应该用下载的(仅从 www.microsoft.com 下载)手动替换系统目录中现有的 dll,因为其他已安装的软件也可能在此过程中失败。

在这种更糟糕的情况下,您可以直接将下载的 dll 文件复制到您的应用程序文件夹本身并与您的软件一起分发,以便它也可以在远程主机上运行。通常,这些兼容的 dll 文件,用于调试和发布版本,也可以在您的 VC++ sdk 目录中找到,可以将其复制以获得完美匹配。