我有一个在 vc++ 6 中构建的项目。现在我升级它 vs2008 并且它现在构建完美但是当我从调试文件夹打开它时它也打开但不执行,因为相关的 dll 不存在。
现在我复制了另一个文件夹中的 exe 和相关的 dll 并尝试在弹出框打开时打开它。
现在我脑子里有两个问题-
- 是否有任何文件损坏。
- 我的 dll 是在 vc++6 环境中构建的。我是否也应该升级 dll。
并且可能还有另一个问题。请建议!
我有一个在 vc++ 6 中构建的项目。现在我升级它 vs2008 并且它现在构建完美但是当我从调试文件夹打开它时它也打开但不执行,因为相关的 dll 不存在。
现在我复制了另一个文件夹中的 exe 和相关的 dll 并尝试在弹出框打开时打开它。
现在我脑子里有两个问题-
并且可能还有另一个问题。请建议!
/DEBUG
链接器选项遵守规则:内存应该在同一个模块中分配和释放。即,不要在 dll 中分配并在 exe 中释放,反之亦然。
您应该检查您的项目正在使用哪个 crt。不同的CRT分配内存的方式不同,在进行的过程中还会做很多额外的工作。
也许你应该最终重建你的代码。