0

我遇到了 MFC 问题。

我已经阅读了很多关于链接、静态与动态以及它们之间的差异的内容。

我的项目是一个开源项目,有大约 2000 个我没有编写的文件,我刚刚调整了这个项目。

我现在的问题是我希望能够将程序克隆到另一台计算机上。第一台计算机可以运行该程序,我认为这是可能的,因为安装了 VS 2008 proffesional,这意味着所有 DLL 都存在。在第二台计算机上,程序启动但冻结,我认为这意味着它找不到 DLL 或者可能是错误的版本。

我尝试过静态链接,但由于该项目包含大量 _AFXDLL 代码,因此无法编译。我已经使用depends.exe 生成依赖关系报告,解析报告并检查所有文件是否存在。在两台计算机上都存在所有 DLL 文件。

我的问题是,是否知道我的程序为什么会冻结?在机器上安装 VS 似乎可以解决问题,所以我假设 VS pro 复制了一些我不知道的重要文件。如果是这样,有没有找到这些文件的好方法?

4

1 回答 1

1

问题现在解决了!

答案很简单,CRT 和 MFC 文件有不同的版本。为了确保版本始终相同,可以将文件与应用程序一起重新分发。Jochen Kalmbach 在这里写了一个非常简单和精确的教程来说明如何做到这一点

我希望这个答案对其他人有帮助!:)

于 2013-08-21T11:36:23.797 回答