Windows 8 SDK中保留哪些DirectX组件? [英] What DirectX components are retained in Windows 8 SDK?

查看:89
本文介绍了Windows 8 SDK中保留哪些DirectX组件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

背景:我正在Visual Studio 2013中进行开发,目标是在Windows 7上运行的.Net 4.5.我一直试图使DirectX在WPF上下文中运行,并被称为SharpDX.,并使用该示例程序: http://sharpdxwpf.codeplex.com/SourceControl/latest#SharpDX.WPF.sln

Background: I've developing in Visual Studio 2013 and targeting .Net 4.5, running on Windows 7. I've been trying to get DirectX to run in a WPF context and was referred to SharpDX, and to a sample program using it: http://sharpdxwpf.codeplex.com/SourceControl/latest#SharpDX.WPF.sln

当我尝试构建它时,出现错误,因为缺少'd3dcompiler_43.dll'.我通过明确下载DirectX最终用户运行时( https://www.microsoft.com/en-us/download/details.aspx?id=8109 )

When I tried to build it I got errors because 'd3dcompiler_43.dll' was missing. I fixed that by explicitly downloading the DirectX End User Runtimes (https://www.microsoft.com/en-us/download/details.aspx?id=8109)

我的问题:根据MSDN DirectX,它已被折叠到Windows 8 SDK中(

My Question: According to MSDN DirectX has been folded into the Windows 8 SDK (https://blogs.msdn.microsoft.com/chuckw/2012/03/22/where-is-the-directx-sdk/), and according to the same document it is included with Visual Studio 2012.

因为我使用的是VS2013(专业版),所以我认为它也包含在其中.那么,为什么我必须显式下载DirectX最终用户软件包才能获得我的DLL?还是Windows 8 SDK不包含旧版DLL?(如果是,那么旧版程序应该如何在Windows 8和10中运行?)是否可以有人向我解释DirectX路线图?

Since I'm using VS2013 (Professional) I assumed that it's also included in that. So why did I have to explicitly download the DirectX End User package to get my DLL? Or does the Windows 8 SDK not include legacy DLL's? (and if so, how are legacy programs supposed to work in Windows 8 and 10?) Could someone please explain the DirectX roadmap in practical terms to me?

推荐答案

有关D3DCompile的故事被告知

The story around D3DCompile is told here.

简而言之,使用SharpDX软件包进行构建并不需要安装旧版DirectX SDK,但是您确实需要其部署的旧的可选并排DLL.您可以通过安装 DXSETUP .

In short, building with the SharpDX package doesn't require you have the legacy DirectX SDK installed, but you do need the old optional side-by-side DLLs it deployed. You can get the old #43 version by installing DXSETUP.

请参见不是这样的DirectSetup 有关旧版DirectX SDK组件部署的所有详细信息.

See Not So DirectSetup for all the details on the legacy DirectX SDK component deployment.

对于使用Direct 11或DirectX 12的现代应用程序,最好使用D3DCompile#47.它内置于Windows 8.1和Windows 10 OS中,标头位于Windows 8.1 SDK中,并且Windows 8.1 SDK中有一个可重载的DLL,您可以将其用于Windows Vista SP2或更高版本与您的系统一起部署的并排"应用程序.SharpDX可能应该使用该版本,但是如果您想支持Windows XP,它们可能会坚持使用#43.

For modern apps using Direct 11 or DirectX 12, you'd be better off using D3DCompile #47. It's built into the Windows 8.1 and Windows 10 OS, the headers are in the Windows 8.1 SDK, and there's a redistable DLL in the Windows 8.1 SDK that you can use for Windows Vista SP2 or later 'side-by-side' deployed with your app. SharpDX should probably be using that one, but they are likely sticking with #43 in case you want to support Windows XP.

有关旧版DirectX SDK和DXSETUP部署的DLL的完整列表,请参见 KB179113 .这些都不是Windows SDK部署的,也不是任何版本的Windows OS附带的.

For a full list of the DLLs that were deployed by the legacy DirectX SDK and DXSETUP, see KB179113. None of these are deployed by the Windows SDK nor are any of them included with any version of the Windows OS.

这篇关于Windows 8 SDK中保留哪些DirectX组件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆