【问题标题】:kernel32.lib accidentally deleted - VS 2012 Fixkernel32.lib 意外删除 - VS 2012 修复
【发布时间】:2013-04-22 05:12:59
【问题描述】:

我最近在我的家用笔记本电脑上安装了 VS2012,以便在业余时间编写一些软件来娱乐。以下是事故发生的顺序:

  1. 意外安装了适用于 Windows 8 应用程序的 VS2012。意识到我实际上想要 Windows 桌面版本。

  2. 卸载上面的,安装VS2012 for Windows Desktop。

  3. 开始写软件,一切正常,可以编译。

  4. 在我的开始屏幕上查看提到 Windows 8 的随机 VS 文件夹 - 认为它与 #1 相关,将其从计算机中永久删除。

  5. 我的程序不再编译,出现以下常见错误:

错误 LNK1104:无法打开文件 'kernel32.lib'

我搜索了我的 C-Drive 以找到此文件的位置以尝试诊断问题,但它不存在 - 我无法在任何地方找到它。我尝试了一个全新的 VS2012 安装,结果失败了——同样的问题。我也尝试下载VS2012 SDK,但它不会安装,坚持没有安装VS2012,它是必需的。

我能做什么!?

编辑:我也尝试过两次修复安装。

【问题讨论】:

  • 您可以尝试修复安装吗?来自控制面板中的程序和功能?
  • 我已尝试修复安装两次,但均未成功。就还原点而言,笔记本电脑相当新,除非 Windows 8 自动执行此操作,否则我没有。
  • 听起来您删除的所有内容都完全安装了。可能必须卸载它并重新开始,而无需额外的删除文件夹步骤。
  • 您是否尝试过卸载然后安装软件。不。不重新安装或修复。
  • 卸载并重新安装软件是我尝试的第一件事。然后我尝试修复它,这也是一个半身像。

标签: c++ visual-studio visual-studio-2012 linker kernel32


【解决方案1】:

您需要(重新)安装 Windows SDK。这包括开发 Windows 应用程序所需的一切,包括用于链接到系统 DLL 的 lib 文件。您将找到供下载的 Windows 8 版本here

我不知道为什么重新安装 Visual Studio 对您不起作用。它应该包括 Windows SDK,但也许您安装了错误的版本。例如,不确定 Express 版本是否包含它。

请注意,Windows SDK 与 Visual Studio SDK 不同。 SDK 部分的意思是“软件开发工具包”,所以它们是相似的。但一种是为 Windows 开发软件,而另一种是为 Visual Studio 开发软件(如插件和扩展等)。不过,Visual Studio SDK 不会包含用于系统 DLL 的 lib 文件,所以这就是它不起作用的原因。当然,它需要先安装 Visual Studio。

【讨论】:

  • 那么您实际上并没有丢失 lib 文件,链接器只是找不到它。检查您的路径是否被覆盖,并且您在 Visual Studio 中的项目设置是否正确设置。
  • 我搜索了我的整个计算机 - 我删除了整个 SDK 文件夹,然后重新安装它没有产生任何结果。很奇怪,我知道。也许我以某种方式再次下载了错误的 SDK,但我对此表示怀疑。我检查了所有的链接器目录和东西——问题是如果你去寻找那些文件夹和目录,它们根本不存在。
【解决方案2】:

在多次重新安装、修复和 SDK 重新安装之后,唯一有效的方法是完整的系统还原。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多