如何检测系统上安装的Windows Media Pack

NxC*_*NxC 4 windows install detection windows-media-encoder windows-media-center

我的应用程序中的一个组件在Windows上失败,因为Windows K/KN系统没有安装Media Feature Pack.为了防止这种情况,我考虑在安装时添加一个检查,以查看当前系统上是否安装了Media Feature Pack.但是,我没有找到足够的有关MFP的信息.

对于大多数Windows版本,它已经安装但是有些Windows 8和8.1安装没有.我需要一种程序化的方法来做到这一点.

我需要任何一个信息来实现这一点:

  1. 基于Regkey

有哪些可用于确定Media Feature Pack是否已安装的注册表?Media Feature Pack(如.NET框架/ VC重新分发)是否设置了一些可用于确定此问题的regkey?

  1. 是否有可用于检测Media Feature Pack的API?

  2. 是否有可用于检测的DLL?

我知道mf.dll和mfplat.dll安装在sys32文件夹中,但是我可以依赖这两个文件进行MFP检测吗?

NxC*_*NxC 6

找到答案并在此处发布如果帮助某人有以下注册表项:

HKEY_LOCAL_MACHINE\SOFTWARE \微软\的Windows\CurrentVersion\SETUP\WindowsFeatures\WindowsMediaVersion

一些链接:

http://support.microsoft.com/kb/922474

这将帮助您检测实际的窗口风味:

http://msdn.microsoft.com/en-us/library/ms724358%28v=vs.85%29.aspx

http://msdn.microsoft.com/en-us/library/aa394239%28v=vs.85%29.aspx