2011-11-21 77 views
4

我有很多用户报告他们得到“msvcp100.dll丢失”错误。msvcp100.dll丢失 - 更多信息错误

而不是让用户不断报告并回复他们需要安装C++可再发行组件我想将错误文本更改为更有意义的内容,例如,告诉他们他们需要安装C++ redist。

这可能吗?

+3

一个更好的解决方案可能是包括可再发行的合并模块中安装包。是什么阻止你这样做? –

+0

我没有,也不想安装一个软件包,所以应该开箱即用。 – ronag

+0

只是碰到了这个......我认为这是应用程序包含所有必需文件而不是强迫用户搜索可再发行文件的要求。 从成本的角度来看这个。您的支持团队浪费大量时间不得不重复解释用户必须安装可重新分发的软件包的原因......花费一点时间创建基于MSI的安装程序会减轻所有这一切...更不用提供了为您的客户提供更好的用户体验...以及在需要时卸载程序的选项。 –

回答

4

如果您不想强制用户安装可再发行组件,则可以静态链接到运行时。转到您的Project Settings并找到C/C++ >>Code Generation。将runtime library设置更改为multithreaded/MT)而不是multithreaded dll/MTd)。

+0

虽然我想这也要求所有第三方库都是用/ MT编译的。 – ronag

2

我不确定是否可以更改错误消息。我非常怀疑这是因为它是操作系统的加载器的错误。
那么为什么你不为你的应用程序创建一个安装程序来执行检查,如果需要的话还可以安装redist软件包?

+0

+1可能的解决方案,但创建一个安装程序只是为了重新编写代码感觉有点愚蠢。 – ronag

0

您还可以在应用程序的发布版本的DLL的应用程序需要