作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
这应该是一个简单的问题,但我确实被它绊倒了。环境是Windows 7上的Visual Studio 2008,机器上也安装了vs2010、vs2012。 (我必须安装几个VS,因为不同的项目使用不同的版本)
我有一个简单的应用程序使用了一些第三个 DLL。 1).当应用程序从 Vs 启动时,就可以了。
2).当我将 DLL 复制到执行文件并从资源管理器启动它时,应用程序在 C++ 库上崩溃
类似于:程序:xxx.exe文件:c:\program files\microsoft visual studio 9.0\vc\include\vector线路:779表达式: vector 下标超出范围
3).我打开命令行并在 PATH 环境变量前添加“Visual Studio 9.0\”和“Visual Studio 9.0\vc\bin”并启动应用程序,它也崩溃了。
我附上了手动启动/崩溃的过程,并将其与模块和 PATH 环境的 Vs IDE 启动过程进行了比较,似乎相同....我很沮丧。
有什么建议吗?提前致谢。
我刚才找到原因了。在 Visual Studio 中,有一个“调试 | Working Directory'设置,默认为项目目录。虽然我复制了所有的 DLL,但我遗漏了一些配置文件。是应用程序逻辑错误。
最佳答案
使用 SysInternals 的 Process Monitor跟踪加载了哪个 DLL。
关于c++ - 如何追踪使用过的DLL(是不是所谓的DLL hell ?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15198506/
我是一名优秀的程序员,十分优秀!