你目前正处于脱机状态,正在等待 Internet 重新连接

您在安装 SQL Server 2005 或 SQL Server 2008 时会收到错误消息:“无法加载 C:\Windows\Microsoft.NET\Framework\[version_number]\mscorlib.tlb 文件”

Extended support for SQL Server 2005 ends on April 12, 2016

If you are still running SQL Server 2005 after April 12, 2016, you will no longer receive security updates and technical support. We recommend upgrading to SQL Server 2014 and Azure SQL Database to achieve breakthrough performance, maintain security and compliance, and optimize your data platform infrastructure. Learn more about the options for upgrading from SQL Server 2005 to a supported version here.

症状
当您安装 Microsoft SQL Server 2005 或 Microsoft SQL Server 2008 时,您会收到以下错误消息:
无法加载 C:\Windows\Microsoft.NET\Framework\version_number\mscorlib.tlb 文件。未能找到该文件,因此解决此问题的尝试失败。请重新安装此程序。
注意version_number 是一种针对 Microsoft .NET Framework 版本号的占位符,例如,v1.0.3705、v1.1.4870 或 v2.0.50727。

安装 SQL Server 2005 或 SQL Server 2008 后您会收到一条错误消息,类似于每次启动 Microsoft SQL Server Management Studio 时收到的错误消息。
原因
出现此问题的原因是在安装过程中未能正确解释 Mscorlib.tlb 文件的路径。
替代方法
重要说明 本部分(或称方法或任务)包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756 如何在 Windows 中备份和还原注册表
若要让我们为您修复此问题,请转到“帮我修复此问题”部分。如果您想自己修复此问题,请转到“我自己修复此问题”部分。

帮我修复此问题



若要自动修复此问题,请单击“修复此问题”按钮或链接。然后在“文件下载”对话框中单击“运行”,并按照“修复此问题”向导中的步骤操作。




注意
  • 如果安装 Service Pack 或修补程序后仍然存在本文中描述的问题,您必须再次运行此更新包以解决此问题。
  • 此向导可能只提供英文版本。但是,Windows 的其他语言版本也提供自动修复功能。
  • 如果所使用的计算机中并未出现此问题,则可将“修复此问题”解决方案保存至闪存驱动器或 CD 中,然后在出现此问题的计算机上运行该解决方案。

然后转到“问题是否已修复?”部分。



我自己修复此问题

对于 SQL Server 2005

若要解决此问题,您必须人工指出注册表中 Mscorlib.tlb 文件的正确路径。为此,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  2. 找到以下注册表子项:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\Tools\Shell\TlbAutoRepair\mscorlib.tlb
    注意:
    • 如果是在 64 位操作系统上安装 SQL Server 2005,请找到下面的注册表子项:
      HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SQL Server\90\Tools\Shell\TlbAutoRepair\mscorlib.tlb
    • 如果安装的是 SQL Server 2005 Express Edition with Advanced Services,请找到下面的注册表子项:
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\Tools\ShellSEM\TlbAutoRepair\mscorlib.tlb
  3. 在右侧窗格中,双击注册表项“TlbPath”。将出现“编辑字符串”对话框。
  4. 在“数值数据”框中, 用下面的值替换“%CLRVERSION%”:
    v2.0.50727
    注意 数值 v2.0.50727 表示 SQL Server 2005 初始发行版本所使用的 .NET Framework 版本。
  5. 单击“确定”,然后退出注册表编辑器。
重要说明:如果您安装 SQL Server 2005 Service Pack 或修补程序,则 Service Pack 或修补程序会将您在步骤 4 中替换的值更改回 %CLRVERSION%。如果安装 Service Pack 或修补程序后仍然存在本文中描述的问题,您必须再次执行以下步骤以解决此问题。

对于 SQL Server 2008

若要解决此问题,您必须人工指出注册表中 Mscorlib.tlb 文件的正确路径。为此,请执行以下步骤:
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”
  2. 确定以下注册表子项的位置:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Tools\Shell\TlbAutoRepair\mscorlib.tlb Notes
    如果您在 64 位操作系统上安装了 32 位版本的 SQL Server 2008,请确定以下注册表子项的位置:
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SQL Server\100\Tools\Shell\TlbAutoRepair\mscorlib.tlb
    如果您安装了含高级服务功能的 SQL Server 2008 速成版,请确定以下注册表子项的位置:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Tools\ShellSEM\TlbAutoRepair\mscorlib.tlb
  3. 双击右窗格中的“TlbPath”
  4. 在“数值数据”框中,将“%CLRVERSION%”替换为以下数值
    v2.0.50727
    注意 数值 v2.0.50727 表示 SQL Server 2008 初始发行版本所使用的 .NET Framework 版本。
  5. 单击“确定”,然后退出“注册表编辑器”。
重要事项 如果您安装了 SQL Server 2008 Service Pack 或修复程序,则 Service Pack 或修复程序会将您在第 4 步中替换的数值恢复至 %CLRVERSION%。如果在安装 Service Pack 或修补程序之后仍然存在本文中所描述的问题,则必须再次执行这些步骤以解决此问题。

问题是否已修复?

  • 检查问题是否已修。如果已修复,您不用再往下看了。如果未修复,则可联系技术支持部门
  • 非常感谢您提供反馈意见。若要提供反馈意见或报告使用此解决方案出现的任何问题,请在“帮我修复此问题”博客中留言或向我们发送电子邮件信息。
状态
Microsoft 已经确认这是在“这篇文章的信息适用于:”部分中列出的 Microsoft 产品中存在的问题。


fixit fix it fixme
属性

文章 ID:918685 - 上次审阅时间:09/30/2011 11:49:00 - 修订版本: 2.0

Microsoft SQL Server 2005 Standard Edition, Microsoft SQL 2005 Server Enterprise, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL 2005 Server Workgroup, Microsoft SQL Server 2005 Express Edition with Advanced Services, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Express with Advanced Services, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2008 Workgroup

  • kbsql2005setup kbexpertiseadvanced kbtshoot kbprb kbfixme kbmsifixme KB918685
反馈