gpt4 book ai didi

c++ - 如何处理 "This application has failed to start because myproject.dll was not found."错误

转载 作者:行者123 更新时间:2023-11-27 23:33:12 26 4
gpt4 key购买 nike

我有一个项目A链接到一个项目B。B被编译成一个.dll,而A是主程序并被编译成一个.exe

项目的编译没有任何问题,但是当我运行程序时,我得到一个弹出窗口说“这个应用程序启动失败,因为找不到 B.dll。重新安装应用程序可能解决问题。”

我已经做了几次清理,试图移动 dll,但那行不通。

顺便说一句,我正在使用 visual Studio 9.0

最佳答案

当 Windows 加载 EXE 时,它会直接或间接地检查需要哪些 DLL。在您的情况下,A.EXE 将需要 B.dll。当 Windows 确定该列表时,它将使用 this procedure定位 DLL:

  • 可执行文件存放的目录[1]
  • 当前目录,由 CreateProcess() 设置
  • Windows 系统目录(包含大多数 Windows DLL,例如 USER32.DLL)
  • Windows 目录(主要是出于遗留原因)
  • 来自 PATH 变量的目录(也是出于遗留原因)

[1] 符号链接(symbolic link)可以导致一个可执行文件有多个路径。在这里准确地说,它是传递给 CreateProcess 的可执行文件的路径。

关于c++ - 如何处理 "This application has failed to start because myproject.dll was not found."错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3237642/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com