修复 .NET 应用程序中的并行错误

H2O*_*aCl 3 .net c# excel-interop visual-studio-2013 windows-8.1

我正在将 C# 程序从 Visual Studio 2010 移植到 Visual Studio 2013。两者都是 IDE 的 Express 版本。在 2013 年的构建中,我遇到了并行失败。

The application has failed to start because its side-by-side configuration is incorrect.

sxstrace.exe工具不提供我能够有用解释的任何信息。这是该工具的人类可读输出。

开始激活上下文生成。

输入参数:

标志 = 0

处理器架构 = AMD64

CultureFallBacks = en-GB;en;en-US

ManifestPath = C:\Users\Brian\Documents\Visual Studio 2013\Projects\WebInterface1\WebInterface1\bin\Debug\WebInterface1.exe

AssemblyDirectory = C:\Users\Brian\Documents\Visual Studio 2013\Projects\WebInterface1\WebInterface1\bin\Debug\

应用程序配置文件 = C:\Users\Brian\Documents\Visual Studio 2013\Projects\WebInterface1\WebInterface1\bin\Debug\WebInterface1.exe.Config


信息:解析应用程序配置文件 C:\Users\Brian\Documents\Visual Studio 2013\Projects\WebInterface1\WebInterface1\bin\Debug\WebInterface1.exe.Config。

错误:激活上下文生成失败。

结束激活上下文生成。

由于信息很少,我怀疑问题可能与 Interop 相关,因此我进行了一些实验,但没有一个能解决问题。

该应用程序与 Excel 互操作,最初Excel 2003来自Office 2003 Professional. 由于Office 2003 Professional已过时,我升级Office 2013 Home and Student并转换了我的应用程序需要与之交互的 Excel 文件。当我的应用程序运行时,升级没有产生明显的差异;并行失败仍然存在。

Interop DLL 是Microsoft.Office.Interop.Excel.dll(像 VS 2010 项目的“源代码”一样,在此之前是 VS 2008 项目,所以我不知道它的谱系)但是为了尝试任何随机的事情来修复侧面 -附带问题,我尝试使用不同的参考来重新构建。在 下Add Reference > Assemblies > Framework,没有似乎与 Excel 互操作相关的参考。同样,下面没有Add Reference > Assemblies > Extensions。我提到这一点是因为在这个其他问答(链接)中,您可以看到在 VS 2012 和 VS 2010 中,似乎应该可以通过Microsoft.Office.Interop.Excel在引用管理器中查找来解析引用,但不幸的是,在我安装的与 2013 年相比。

在 下Add Reference > COM,有一个称为Microsoft Excel 15.0 Object Library (Version 1.8). 这允许项目构建,但并行失败仍然存在。这个MSDN页面似乎表明这是在使用VS 2013时解决引用的正确方法,因此我不必担心已携带多年的DLL的谱系。

我还应该尝试什么来解决并行失败?

更新我删除了所有支持 C++ 的 VS Redistributables。如前所述,我使用的是 C#。我删除并重新安装了 VS 2013。我删除了 Office 2003。side-by-side configuration is incorrect失败仍然存在。

小智 6

我有同样的错误,结果我的应用程序配置文件中有一个条目导致它:

<add key="EmailNotificationList" value="this&that@doamin.com;theotherthing@domain.com"/>
Run Code Online (Sandbox Code Playgroud)

...我不得不改为:

    <add key="EmailNotificationList" value="this&amp;that@doamin.com;theotherthing@domain.com"/>
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助某人。