【发布时间】:2019-11-04 12:02:27
【问题描述】:
某些 Windows 功能是可选的,用户可以决定是否要关闭或打开这些功能。 其中之一是 Windows Media Player 组件(如此处所述http://support.overwolf.com/knowledge-base/enabling-windows-media-player/)
有没有办法在代码中找出当前是否安装了它? 感谢您的帮助!
【问题讨论】:
-
Get-WmiObject Win32_OptionalFeature | Select Name, Captionin Powershell 将列出功能,包括可用时的 WindowsMediaPlayer -
try/catch 无所不能。如果 WMP 对程序至关重要,那么不要使用 try/catch。相反,专注于提供良好的终止消息,为 AppDomain.UnhandledException 编写事件处理程序绝不是可选的。韩国人对此非常了解,并且知道该怎么做。
-
@HansPassant 不,重要的不是 Windows 媒体播放器本身。它是允许在 .NET 中使用某些库的 Windows 媒体功能。如果未安装这些功能,则代码可以正常工作,但不会播放声音。所以 try/catch 不行。
-
@RomanR。谢谢。这也可能起到作用。我现在将坚持进行注册表检查。如果这个解决方案不能 100% 起作用,我会试试你的。