.Net 框架 mscorpe.dll 错误
.Net framework mscorpe.dll error
我有一台安装了 Windows 7 Professional 的客户端机器。为了 运行 我的最新应用程序,我安装了 .Net Framework 4.0 Full,从 here 下载。我的应用程序工作正常。
不过,还有一个应用是用.Net framework 3.5开发的。当我尝试执行该应用程序时,出现错误:
C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorepe.dll is either
not designed to run on Windows or it contains an error ...
我已经尝试删除 .Net framework 4.0 并重新安装它并尝试修复它,但似乎没有任何效果。错误仍然存在。
我试过单独安装.Net framework 3.5,但我无法安装,因为机器上已经安装了较新的版本(4.0)。
3.5 版的应用程序在其他客户端机器上运行良好,所以我猜这个问题与该特定机器上的 .Net Framework 安装无关。
有没有办法修复mscorpe.dll
或重新安装.Net framework 3.5?
首先,确认文件已损坏且无法自动修复。
运行:
sfc /scanfile=C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorepe.dll
如果您看到消息:
Windows Resource Protection found corrupt files but was unable to fix some of them.
表示Windows修复的文件和备份文件都损坏了
Windows 无法自动修复该文件,并且当您重新安装 .Net 3.5 框架时不会替换该特定文件。
要手动恢复文件:
- Install 7-Zip (the 32-bit x86 version).
- Open an administrative command prompt.
- 将 Windows 7 Professional 的副本插入 DVD 驱动器或安装 ISO 映像。
- 运行 在管理命令提示符下执行以下命令。
获取文件的所有权:
takeown /f C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
授予覆盖文件所需的权限:
icacls C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll /GRANT ADMINISTRATORS:F
用安装 DVD 中的原始文件替换文件。请注意,这假定 DVD 在 D: 驱动器上可用。如有必要,更改驱动器号以适合您的设置。
"C:\Program Files (x86)-Zipz.exe" e D:\sources\install.wim -oC:\Windows\Microsoft.Net\Framework64\v2.0.50727\ 4\windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
提示覆盖文件时输入Y
。
- 确保 .Net 3.5 Windows feature is enabled 并重新测试您的应用程序。
注意:如果您无法访问 Windows 安装 DVD 或 ISO,您可以 运行 前两个命令,然后从 mscorpe.dll
另一台机器 运行ning Windows 7 Professional x64。确保从 C:\Windows\Microsoft.Net\Framework64\v2.0.50727\
文件夹中复制它。
帮助我解决了我的问题,我对其进行了一些修改,这就是我所做的。
从另一台机器复制了工作 mscorpe.dll 到本地计算机
在管理员模式下打开命令提示符
在命令提示符下执行以下命令
命令:
takeown /f C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
(相应地调整你的路径)
它返回了如下消息:
成功:文件(或文件夹):
"C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll" now
owned by user "loggedInUser".
之后执行以下命令授予权限。
命令:
icacls C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll /GRANT ADMINISTRATORS:F
收到以下回复。
processed file:
C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
Successfully processed 1 files; Failed processing 0 files
然后我将从另一台机器复制的正确文件复制到那个位置:
xcopy c:\K2PublisherError\mscorpe.dll C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscorpe.dll /y
这修正了错误。
我有一台安装了 Windows 7 Professional 的客户端机器。为了 运行 我的最新应用程序,我安装了 .Net Framework 4.0 Full,从 here 下载。我的应用程序工作正常。
不过,还有一个应用是用.Net framework 3.5开发的。当我尝试执行该应用程序时,出现错误:
C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorepe.dll is either not designed to run on Windows or it contains an error ...
我已经尝试删除 .Net framework 4.0 并重新安装它并尝试修复它,但似乎没有任何效果。错误仍然存在。
我试过单独安装.Net framework 3.5,但我无法安装,因为机器上已经安装了较新的版本(4.0)。
3.5 版的应用程序在其他客户端机器上运行良好,所以我猜这个问题与该特定机器上的 .Net Framework 安装无关。
有没有办法修复mscorpe.dll
或重新安装.Net framework 3.5?
首先,确认文件已损坏且无法自动修复。
运行:
sfc /scanfile=C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorepe.dll
如果您看到消息:
Windows Resource Protection found corrupt files but was unable to fix some of them.
表示Windows修复的文件和备份文件都损坏了
Windows 无法自动修复该文件,并且当您重新安装 .Net 3.5 框架时不会替换该特定文件。
要手动恢复文件:
- Install 7-Zip (the 32-bit x86 version).
- Open an administrative command prompt.
- 将 Windows 7 Professional 的副本插入 DVD 驱动器或安装 ISO 映像。
- 运行 在管理命令提示符下执行以下命令。
获取文件的所有权:
takeown /f C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
授予覆盖文件所需的权限:
icacls C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll /GRANT ADMINISTRATORS:F
用安装 DVD 中的原始文件替换文件。请注意,这假定 DVD 在 D: 驱动器上可用。如有必要,更改驱动器号以适合您的设置。
"C:\Program Files (x86)-Zipz.exe" e D:\sources\install.wim -oC:\Windows\Microsoft.Net\Framework64\v2.0.50727\ 4\windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
提示覆盖文件时输入Y
。
- 确保 .Net 3.5 Windows feature is enabled 并重新测试您的应用程序。
注意:如果您无法访问 Windows 安装 DVD 或 ISO,您可以 运行 前两个命令,然后从 mscorpe.dll
另一台机器 运行ning Windows 7 Professional x64。确保从 C:\Windows\Microsoft.Net\Framework64\v2.0.50727\
文件夹中复制它。
从另一台机器复制了工作 mscorpe.dll 到本地计算机 在管理员模式下打开命令提示符 在命令提示符下执行以下命令
命令:
takeown /f C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll
(相应地调整你的路径) 它返回了如下消息:
成功:文件(或文件夹):
"C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll" now owned by user "loggedInUser".
之后执行以下命令授予权限。 命令:
icacls C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll /GRANT ADMINISTRATORS:F
收到以下回复。
processed file: C:\Windows\Microsoft.Net\Framework64\v2.0.50727\mscorpe.dll Successfully processed 1 files; Failed processing 0 files
然后我将从另一台机器复制的正确文件复制到那个位置:
xcopy c:\K2PublisherError\mscorpe.dll C:\Windows\Microsoft.NET\Framework64\v2.0.50727\mscorpe.dll /y
这修正了错误。