我有一个MFC应用程序,当我在另一台没有安装VS2010的计算机上运行它时,要求在主题行中丢失dll。我遇到了解决方案,说我必须安装VS2010 redistributable package但是真的吗?我们是否必须在每台客户计算机上安装它?这似乎不太好。
有趣的是,我有另一个MFC应用程序,它与新的dll做同样的事情,但它不需要mfc100u.dll,所以我很困惑。
答案 0 :(得分:2)
您的应用所依赖的dll是您可以通过以前在每个VS安装(现在免费软件)中使用的dependency walker工具找到的东西
可再发行组件是在客户端PC上部署应用程序时应安装的软件包。安装程序通常会自动(通常是静默地)执行此操作,以确保您的应用程序将满足其所有依赖项。
所以是的,你需要
A)找出所有您应用的依赖关系 B)确定您需要哪些软件包,然后在安装时将部署与您的应用程序一起
这就是安装人员在胜利世界中如此普遍的原因
答案 1 :(得分:0)
有一个构建设置,您可以在其中选择是使用MFC DLL还是将MFC链接到exe文件。如果您的应用程序只包含单个exe文件,那么使用静态链接将消除对MFC DLL的需要。在项目属性中查找“使用MFC”设置。
P.S。此设置实际上是两个设置:一个用于调试配置,一个用于发布配置。