0

我的应用程序的一位用户收到错误“无法找到运行此应用程序的运行时版本”。我的应用程序设置为具有针对 v3.5 的 .NET 框架。我已经要求他安装 .NET framework 3.5,但他仍然收到错误消息。

我尝试了几个网站的解决方案,添加了一个配置文件,代码如下:

<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version = "v4.0"/>
  <supportedRuntime version ="v2.0.50727" />
</startup>

然而问题似乎并没有消失。同样的事情发生在他的两台电脑(Windows XP 和 Vista)上。其他可能的原因是什么?

4

2 回答 2

0

有类似的问题,由于以下错误而无法运行 RETSCREEN.EXE:

解析 c:\WINDOWS\Microsoft.NET\Framework\v2..50727\config\machine.config 时出错 解析器返回错误 0xC00CE556

我遵循了发布的解决方案:http: //blogs.sits-solutions.com/2010/11/02/parser-returned-error-0xc00ce556/

事实证明,“machine.config”文件(如错误所示)是问题所在。“machine.config”可以在位于“%SystemRoot%\microsoft.NEt\framework\v2.0.50727\config”下的 CONFIG 文件夹中找到。所以:

Logon as admin
Go to “c:\windows\microsoft.NEt\framework\v2.0.50727\config” and rename “machine.config” to something like “machine.config.BAD”
In the same location create a folder called TEMP
Copy “machine.config.default” from the CONFIG folder to TEMP folder
Go into TEMP folder and rename “machine.config.default” to “machine.config”
Copy “machine.config” from TEMP folder back to CONFIG folder
Restart your machine

您的 C00CE556 错误应该得到解决。

实际上我不需要在另一个文件夹中复制:在同一文件夹中复制 machine.config.default 并将其重命名。

于 2014-09-03T16:19:46.483 回答
0

你的配置说如果你有版本 4.0 然后使用它否则回退到下一个即 v2

但根据 MSDN,属性 useLegacyV2RuntimeActivationPolicy 将用于回退

取自 MSDN

指定是启用 .NET Framework 2.0 版运行时激活策略还是使用 .NET Framework 4 版激活策略。

所以我建议你用这种方式

<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version = "v4.0"/>
</startup>
于 2012-07-15T18:58:52.200 回答