代码之家  ›  专栏  ›  技术社区  ›  John MacIntyre

以编程方式检测是否安装了Windows Media Player

  •  1
  • John MacIntyre  · 技术社区  · 14 年前

    有人对如何以编程方式检测是否安装了Windows Media Player有什么建议吗?

    我知道注册表设置查找,但不信任它,因为它有点误导(卸载可能不会删除它)。我已经考虑过发布一个视频,但是一个错误可能是由于没有安装媒体播放器以外的其他原因造成的,所以这也不是决定性的。

    NSIS 安装工。但是我的C++应用程序是最重要的,我愿意在安装程序中使用注册表破解。

    3 回复  |  直到 14 年前
        1
  •  7
  •   Vantomex    14 年前

    看看 IsInstalled 键下的值 HKLM\Software\Microsoft\Active Setup\Installed Components\{22d6f312-b0f6-11d0-94ab-0080c74c7e95} 1 如果安装了, 0 否则。

    Detecting Windows Media Player from an Application

        2
  •  2
  •   Duncan Smart    14 年前

    (你不会说你是在检查一个可嵌入的(即OCX)播放器是否嵌入到你的应用程序中,或者是要从你的应用程序中扩展启动EXE。)

    http://technet.microsoft.com/en-us/library/bb676121.aspx )

    在您的安装程序中,只需检查HKEY_CLASSES_ROOT\CLSID{22D6F312-B0F6-11D0-94AB-0080C74C7E95},也许还需要检查InprocServer32子键上的路径是否存在。

        3
  •  2
  •   bradenb    14 年前

    所以,我建议你查一下 HKLM\Software\Microsoft\MediaPlayer\ Installation Directory Installation DirectoryLFN (默认为 %ProgramFiles%\Windows Media Player )检查一下 wmplayer.exe