.Net framework mscorpe.dll错误

Cri*_*nSO 12 .net c# dll windows-7 winforms

我有一台安装了Windows 7 Professional的客户端计算机.为了运行我的最新应用程序,我安装了.Net Framework 4.0版Full,从这里下载.我的申请工作正常.

但是,在.Net framework 3.5中开发了另一个应用程序.当我尝试执行该应用程序时,出现错误:

C:\ Windows\Microsoft.Net\Framework64\v2.0.50727\mscorepe.dll要么不是设计为在Windows上运行,要么包含错误...

在此输入图像描述

我已经尝试删除.Net framework 4.0并重新安装它,我尝试修复它,但似乎没有任何工作.错误仍然存​​在.

我已经尝试单独安装.Net framework 3.5,但我无法安装它,因为机器上已经安装了较新的版本(4.0).

版本3.5的应用程序在其他客户端计算机上运行良好,所以我想这个问题与该特定计算机上的.Net框架安装隔离.

有没有办法修复mscorpe.dll或重新安装.Net framework 3.5?

Chr*_*ill 5

首先,验证文件是否已损坏且无法自动修复.

跑:

sfc /scanfile=C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorepe.dll
Run Code Online (Sandbox Code Playgroud)

如果您看到以下消息:

Windows Resource Protection found corrupt files but was unable to fix some of them.
Run Code Online (Sandbox Code Playgroud)

这意味着Windows用于执行修复的文件和备份文件都已损坏.

Windows无法自动修复该文件,并且在重新安装.Net 3.5框架时不会替换此特定文件.


要手动恢复文件:

  1. 安装7-Zip(32位x86版本).
  2. 打开管理命令提示符.
  3. 将Windows 7 Professional的副本插入DVD驱动器或安装ISO映像.
  4. 从管理命令提示符运行以下命令.

取得文件的所有权:

takeown /f C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
Run Code Online (Sandbox Code Playgroud)

授予覆盖文件所需的权限:

icacls C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll /GRANT ADMINISTRATORS:F
Run Code Online (Sandbox Code Playgroud)

将文件替换为安装DVD中的原件.请注意,这假设DVD在D:驱动器上可用.如有必要,请更改驱动器号以适合您的设置.

"C:\Program Files (x86)\7-Zip\7z.exe" e D:\sources\install.wim -oC:\Windows\Microsoft.Net\Framework64\v2.0.50727\ 4\windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
Run Code Online (Sandbox Code Playgroud)

输入Y提示是否覆盖文件时.


  1. 确保启用.Net 3.5 Windows功能并重新测试您的应用程序.

注意:如果您无权访问Windows安装DVD或ISO,则可以运行前两个命令,然后mscorpe.dll从另一台运行Windows 7 Professional x64的计算机进行复制.确保从C:\Windows\Microsoft.Net\Framework64\v2.0.50727\文件夹中复制它.