Silverlight能够与MIDI乐器进行通信吗?

6
银光能否与连接到运行银光应用程序的计算机上的MIDI乐器通信?无论是在浏览器内还是外部。
3个回答

2

在Silverlight中似乎不可能实现此功能。要与MIDI设备通信,您需要在winmm.dll中调用PInvoke方法,而在Silverlight中(显然)无法实现此操作。请参见:

http://forums.silverlight.net/forums/t/123673.aspx

在WPF或WinForms应用程序中可以轻松完成此操作。在浏览器中使用XBAP也可以完成此操作,但是您需要获得提升的权限才能访问winmm API,这需要一个证书。您仍然可以使用.Net制作ActiveX控件,但我认为您仍然需要一个证书才能获得适当的权限(尽管它可能只需要一个可怕的安全确认对话框即可运行)。


0

在Silverlight中不能直接使用.NET代码,因为Silverlight具有不同的核心。

您想在Silverlight中引用的所有.NET类都需要重新编译以供Silverlight使用。

也无法直接访问底层硬件,所以恐怕您只能使用完全信任的XBAP(您需要对应用程序进行签名,用户将收到一个弹出窗口请求权限)。 XBAP在浏览器中运行时提供了所有.NET功能。 XBAP将在安装了.NET 3.0的任何> xp机器上的firefox / internet explorer上运行。

希望这可以帮助您。


0

Silverlight 3拥有可扩展的音频和视频多媒体管道。您可以程序化地创建自己的音频并播放它。要实现您想要的功能,您需要编写自己的MIDI合成器。


我不想播放MIDI,也不想发出任何声音,我想从MIDI乐器中读取MIDI。 - pupeno

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接