Using the Windows SDK 8.1 for Development on Windows 7

Can I install the Windows SDK for Windows 8.1 on my Windows 7 machine and use its libraries for development? Specifically, I would like to use Direct3D libraries / headers.

+3


source to share


2 answers


The Windows SDK for Windows 8.1 supports building Windows desktop applications for Windows Vista, Windows 7, Windows 8, Windows 8.1, and Windows Server equivalents for each. The only important thing is that you set it _WIN32_WINNT

correctly to the correct value for the target application:

  • For Windows 8.1 support it _WIN32_WINNT

    is 0x0603, which is the default in Windows 8.1 SDK / VS 2013, and this is the value you expect to use for Windows 8.1 and Windows phone 8.1 Store apps.

  • For Windows 8.x support, it _WIN32_WINNT

    is 0x0602, which is the default in the Windows 8.0 SDK / VS 2012, and this is the value you expect to use for Windows Store apps for Windows 8.0, Windows Phone 8.0, and Xbox One.

  • To support Windows 7 and Windows 8.x desktops, this _WIN32_WINNT

    must be 0x0601.

  • To support Windows Vista, Windows 7 and Windows 8.x _WIN32_WINNT

    desktops , this must be 0x0600.

See Using Windows Headers

Windows SDK for Windows 8.1 comes with VS 2013, Windows SDK for Windows 8.0 comes with VS 2012. To use the Windows SDK for Windows 8.1 with VS 2012 or VS 2010, you need to use the Page Properties solution because otherwise there is no automatic integration ... See the Visual C ++ Team Blog and this blog post for the required .props files.

The Windows SDK for Windows 8.x contains DirectX headers for Direct3D 9, Direct3D 10.x, Direct3D 11.x, DirectSound, DirectInput, DirectDraw, DirectMusic kernels, DirectShow, XInput 1.4 or 9.1.0, and XAudio 2.8. In the DirectX SDK section of a certain age .



Legacy DirectX SDK: According to MSDN, a number of legacy DirectX SDK components are deprecated and are not part of the Windows 8.x SDK. In fact, the DirectX SDK itself is outdated. In particular, D3DX9, D3DX10, D3DX11 and XACT. For modern alternatives that don't require the legacy DirectX SDK, see Life Without D3DX .

If you need to use D3DX, XACT, XInput 1.3 or XAudio 2.7, you can use the legacy DirectX SDK in conjunction with the Windows 8.x SDK, but you need to switch the order of the include / lib paths from VS 2010. See the MSDN page for details . See also XInput and XAudio2 for more guidance here.

Windows XP: If you need to target Windows XP, you need to use the Windows 7.1A SDK and platform specific toolkit. You will also need the old DirectX SDK, especially for the HLSL D3DCompile # 43 compiler. See this post for important notes, especially for DirectX development.

Deployment . If you are using the Windows SDK for Windows 8.1 and are using HLSL compatibility or other D3DCompile APIs at runtime, you need to deploy the required DLL. See HLSL, FXC and D3DCompile . Everything else is included in the operating system. If you are using any of the legacy DirectX SDK components such as D3DX9, D3DX10, D3DX11, XInput 1.3, or XAudio 2.7, you still need the legacy DirectSetup package. Be sure to read Not So Direct Setup .

Related: Catalog DirectX SDK tools , catalog DirectX SDK samples , of The Zombie DirectX SDK

+5


source


So yes, you can do it. In Visual Studio 2013 Windows SDK 8.1 which contains direct3d is enabled by default.



+1


source







All Articles