System.Runtime.Serialization.SerializationException问题

时间:2011-06-13 11:47:35

标签: c++ visual-studio-2010

我在IIS 7的WS2K8 R2盒子上使用一组托管代码时遇到了一些麻烦。我有另一台运行WS2008的服务器没有遇到同样的问题。我从旧服务器复制了应用程序代码,使其完全相同。

我的服务器端日志中抛出的异常是:

"ModuleLoadException: The C++ module failed to load while attempting to initialize the default appdomain."

我也同时在VS2010中返回错误:

Unable to find assembly 'msvcm80, Version=8.0.50727.4927, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

我已经检查过,msvcm80的正确版本在服务器上的“C:\ Windows \ winsxs”文件夹中。我还安装了Microsoft Visual C ++ 2005 Redistributable(x64)和(x86)。

我看不出为什么会抛出错误?

我的调试时间很低,所以请耐心等待。

2 个答案:

答案 0 :(得分:1)

我重新检查了版本细节。它似乎是Microsoft Visual C ++ 2005 Redistributible的要求。我在服务器上重新安装了它的所有版本并应用了安全修补程序。

在IIS中重新启动和测试后,问题已经从我的日志文件中消失了。

我确实检查了两台服务器之间的比较,并不是很高兴复制文件。我觉得最好先尝试这种方法。

感谢您的帮助。

答案 1 :(得分:0)

msvcm80是一个.NET Framework混合程序集(microsoft visual c ++托管+非托管)。您可能会尝试在第二台服务器上找到此文件,并将其放在第一台服务器上的应用程序附近。

注意:.Net Framework Runtime需要精确版本的程序集(在您的情况下为8.0.50727.4927)。