在Windows N版本上使用WMPLib

时间:2012-08-07 19:29:58

标签: c# windows dll wmp wmplib

我遇到了问题,我不知道如何解决这个问题:我在C#应用程序中使用了WMPLib(位于C:\ Windows \ System32 \ WMP.dll中)。我引用它并在主窗体的代码文件的标题中添加它:

using WMPLib;

但是,如果我尝试在Windows N版本上运行我的应用程序(我认为KN版本也在这里计算),它会停止工作,Windows会显示以下消息:“应用程序名称已停止工作。您可以检查解...”。所以现在,我正在尝试找到解决此问题的方法,例如,在用户运行Windows N版时,不在运行时导入该DLL。 我担心我无法将我的应用程序重新分发给Windows N用户。

感谢您的任何建议, 瓦利

1 个答案:

答案 0 :(得分:1)

默认情况下,N版本没有安装Windows Media Player,这解释了DLL丢失的原因。但是,Windows Media Player可以在事后安装。

这为您提供了两种选择:

  • 在运行时动态加载DLL
  • 检查并要求安装Windows Media Player作为先决条件(即在安装过程中)

你可能真的想要两者兼顾。如果您的应用程序需要此程序集完成其工作,则在应用程序启动时,您可能想要检查DLL是否可用。如果不是,则显示有意义的错误消息将比直接崩溃更可取。