是否可以使用Silverlight编写屏幕录制软件?

时间:2011-03-30 17:55:42

标签: silverlight silverlight-oob

我打算开发一个屏幕录制软件。这类似于微软的Live Meeting

是否可以使用Silverlight编写此类应用程序?

P.S,我更喜欢的是Silverlight,因为它支持X-Platform。

2 个答案:

答案 0 :(得分:1)

我不知道性能是否足够好,但是有一个CopyFromScreen方法可以让你从给定窗口截取屏幕截图。如果您以足够的帧速率拍摄屏幕截图,则可以将它们传输到客户端。

有关如何捕获屏幕截图的示例,请参阅http://www.dotnetcurry.com/ShowArticle.aspx?ID=303

我的理解是位图采样是此类软件的标准方法。

答案 1 :(得分:1)

Silverlight本身不支持屏幕抓取,因此要使其正常工作,您必须离开Silverlight的沙箱。

使用Silverlight 4,您可以调用外部自动化对象(COM)来获取屏幕截图并将其传递给应用程序。这种方法的缺点是:需要提升信任度,仅限Windows,需要额外的安装步骤。

Silverlight 5将支持P / Invoke,这应该会让事情变得更容易一些。但这仍然让Mac脱离了画面。一般来说,我会说在Silverlight中不值得这样做。如果可移植性对您很重要,请考虑使用.net + moonlight。