无法在Microsoft Visual Studio中打开Windows.h

8ehkhllq  于 2022-12-14  发布在  Windows
关注(0)|答案(9)|浏览(479)

首先是:我使用的是Microsoft Visual Studio 2012
我是一个C#/Java开发人员,现在我正在尝试使用Microsoft SDK和C++为kinect编程。所以我从Color Basics示例开始,但我无法让它编译。一开始,没有一个类能够找到Windows.h。所以我安装了(或者重新安装,我不确定)Windows SDK,并将SDK的include目录添加到项目的include“路径”中,然后所有问题都解决了,除了一个:

Error   5   error RC1015: cannot open include file 'windows.h'. C:\temp\ColorBasics-D2D\ColorBasics.rc  17  1   ColorBasics-D2D

这就是错误。没有原因为什么,系统可以找到它,因为它是在多个其他文件中使用,只有这个文件是不能与它一起工作。作为参考,整个文件是bug(ColorBasics.rc):

//------------------------------------------------------------------------------
// <copyright file="ColorBasics-D3D.rc" company="Microsoft">
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// </copyright>
//------------------------------------------------------------------------------

// Microsoft Visual C++ generated resource script.
//
#include "resource.h"

#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#define APSTUDIO_HIDDEN_SYMBOLS
#include "windows.h"
#undef APSTUDIO_HIDDEN_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS

/////////////////////////////////////////////////////////////////////////////
// English (United States) resources

#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US

/////////////////////////////////////////////////////////////////////////////
//
// Icon
//

// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_APP                 ICON                    "app.ico"

/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//

IDD_APP DIALOGEX 0, 0, 512, 424
STYLE DS_SETFONT | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_CONTROLPARENT | WS_EX_APPWINDOW
CAPTION "Color Basics"
CLASS "ColorBasicsAppDlgWndClass"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
    DEFPUSHBUTTON   "Screenshot",IDC_BUTTON_SCREENSHOT,238,391,50,14
    CONTROL         "",IDC_VIDEOVIEW,"Static",SS_BLACKFRAME,0,0,512,384
    LTEXT           "Press 'Screenshot' to save a screenshot to your 'My Pictures' directory.",IDC_STATUS,0,413,511,11,SS_SUNKEN,WS_EX_CLIENTEDGE
END

/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//

#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO
BEGIN
    IDD_APP, DIALOG
    BEGIN
    END
END
#endif    // APSTUDIO_INVOKED

#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//

1 TEXTINCLUDE 
BEGIN
    "resource.h\0"
END

2 TEXTINCLUDE 
BEGIN
    "#define APSTUDIO_HIDDEN_SYMBOLS\r\n"
    "#include ""windows.h""\r\n"
    "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n"
    "\0"
END

3 TEXTINCLUDE 
BEGIN
    "\r\n"
    "\0"
END

#endif    // APSTUDIO_INVOKED

#endif    // English (United States) resources
/////////////////////////////////////////////////////////////////////////////


#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//

/////////////////////////////////////////////////////////////////////////////
#endif    // not APSTUDIO_INVOKED
ukxgm1gy

ukxgm1gy1#

如果您尚未执行此操作,请尝试将"SDK Path\Include"添加到:

Project → Preferences → C/C++ → General → Additional Include Directories

并将"SDK Path\Lib"加到:

Project → Preferences → Linker → General → Additional Library Directories

此外,尝试将"Windows.h"更改为<windows.h>
如果没有帮助,请检查该文件的物理存在性,它应该在Visual Studio安装目录下的“\VC\PlatformSDK\Include”文件夹中。

w9apscun

w9apscun2#

启动Visual Studio。转到“工具”-〉“选项”并展开“项目和解决方案”。从树中选择“VC++目录”,然后从右侧的组合框中选择“包含文件”。
您应该会看到:
$(Windows数据库目录)\包含
如果缺少此文件,则说明您发现了问题。如果没有,请搜索文件。该文件应位于
32位系统:
C:\程序文件\Microsoft SDK\Windows \v6.0A\包含
64位系统:
C:\程序文件(x86)\Microsoft SDK\Windows \v6.0A\包含
如果VS安装在默认目录中。
来源:http://forums.codeguru.com/showthread.php?465935-“在Visual-Studio-2008中没有这样的文件或目录!-帮助&p=1786039#post1786039

kd3sttzy

kd3sttzy3#

**如果您的目的是Windows XP(v140_xp),请尝试安装 Windows XP C++支援

从Visual Studio 2012开始,默认工具集(v110)不再支持Windows XP。因此,如果项目面向具有默认C++包的Windows XP,则可能会发生Windows.h错误。
检查项目的 * 平台工具集 *.(Project → Properties → Configuration Properties → General)中指定的Windows SDK版本。如果工具集以_xp结尾,则需要安装XP支持。

打开Visual Studio安装程序并单击适用于您的Visual Studio版本的 * 修改 *。打开 * 单个组件 * 选项卡并向下滚动到 * 编译器、生成工具和运行时 *。在底部附近,选中 *Windows XP对C++的支持 * 并单击 * 修改 * 开始安装。

另请参阅:

p1tboqfb

p1tboqfb4#

对于我的情况,我必须右键单击解决方案,然后单击“重定目标项目”。在我的情况下,我重定目标到WindowsSDK版本10.0.1777.0和平台工具集v142。我还必须将"Windows.h"更改为<windows.h>
我正在Windows 10计算机上运行Visual Studio 2019版本16.25

wztqucjr

wztqucjr5#

**1)**转到C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A for VS2013
**2)**复制文件夹IncludeLib(您应该检查文件夹窗口中的文件夹位置,如v7.1v8v6等)
**3)**将它们粘贴到C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC

我解决了我的问题,比如:

**错误lnk 1104:**无法打开文件“kernel32.lib”。
**错误c1083:**无法打开Windows. h

  • 谢谢-谢谢
s4chpxco

s4chpxco6#

需要选择Windows SDK版本和平台工具集的正确组合,当然这取决于您当前安装的工具集

zqdjd7g9

zqdjd7g97#

我开始了一份新工作(全新计算机)并安装了Visual Studio社区2019(我们正在等待VS 2022 Professional的更新)。我们使用C#和C解决方案。使用VS安装程序,我最初选择了“.Net桌面开发”、“使用C进行桌面开发",和“数据存储和处理”。在“使用C进行桌面开发”下需要选中其他选项。我添加了“Windows10SDK(10.0.18362.0)”(最新版本)和关于找不到windows.h的错误(以及其他错误)都已解决。您可能需要其他选项,如“C MFC for latest v142 build tools(x86 & x64)”(我看到的最新版本),以获取C++解决方案的所有内容。

scyqe7ek

scyqe7ek8#

我得到了这个错误致命错误lnk 1104:无法打开文件“kernel32.lib”。此错误是由于VC++目录中没有路径造成的。若要解决此问题,请
开启Visual Studio 2008
1.转到“工具”-“选项”-“项目和解决方案”-“VC ++目录”-*
1.然后在右上角选择库文件
1.此处需要添加kernel132.lib的路径
在我的例子中,它是C:\Program Files\Microsoft SDK\Windows\v6.0A\Lib

drnojrws

drnojrws9#

如果有人在Visual Studio中遇到此问题,请执行以下步骤:
1.运行Visual Studio安装程序
1.转到修改
1.取消勾选旧版本的Windows SDK版本(对我来说,它是10. 0. 18??????)
1.勾选Windows SDK版本的最新版本(对我来说,是10. 0. 19??????)
1.按OK,它将卸载旧的SDK并安装新的SDK版本和所有头文件。

相关问题