代码之家  ›  专栏  ›  技术社区  ›  Yigang Wu

如何在没有窗口的情况下使用WMP引擎

  •  0
  • Yigang Wu  · 技术社区  · 15 年前

    我正在编写一个简单的音频播放应用程序,以节省编解码器费用,因此我们使用WMP ActiveX播放所有音乐文件,但它需要为ActiveX创建一个窗口,并且创建ActiveX的线程应该有消息循环。我想知道是否有一种没有ActiveX和窗口的WMP方法?事先谢谢。

    1 回复  |  直到 15 年前
        1
  •  0
  •   Hans Passant    15 年前

    是的,您不必使用ActiveX控件。只需使用项目+添加引用,浏览选项卡,选择c:\windows\system32\wmp.dll

    但您确实需要一个用[stathread]或thread.setapartmentstate()初始化的线程和一个消息循环(application.run)。对于具有单线程单元要求的COM服务器(如wmp.dll),是必需的。COM使用消息循环封送调用并生成事件。如果没有循环,服务器将死锁。