在C#WinForms应用程序中显示Flash内容

Translate

什么是最好的展示方式Flash内容C#WinForms应用程序?我想创建一个用户控件(类似于当前PictureBox),它将能够显示图像和Flash内容。

能够从Flash Player加载Flash内容将是很棒的而不是磁盘上的文件。

This question and all comments follow the "Attribution Required."

所有的回答

Translate

虽然我自己没有在Windows窗体应用程序中使用Flash对象,但我确实知道这是可能的。在工具箱上的Visual Studio中,选择添加一个新组件。然后在出现的新窗口中选择“ COM组件”标签以获取列表,您可以在其中找到“冲击波Flash对象”

添加到工具箱后,只需使用该控件即可,就像使用Visual Studio中的其他“标准”控件一样。

三个简单的命令可用于与控件进行交互:

  • AxShockwaveFlash1.Stop()
  • AxShockwaveFlash1.Movie = FilePath和“ \ FileName.swf”
  • AxShockwaveFlash1.Play()

我认为这全是自我解释。

能够从各种流而不是磁盘上的文件中加载Flash内容将是很棒的。

我刚刚看到您也在寻找一种从流中加载内容的方法,并且由于我不确定如何使用Shockwave Flash对象,因此我将为您提供另一种选择(实际上有两种选择)。

第一个是我建议您仅在必要时使用的,因为它使用了完整的“网络浏览器组件”(也可以作为额外的工具箱商品获得),就像尝试用火箭筒射击苍蝇一样。当然它将起作用,因为控件将充当真正的浏览器窗口(实际上是Internet Explorer浏览器),但是它并不是真正按照您需要的方式使用。

第二种选择是使用我刚刚发现的东西,以查找有关在Windows窗体中播放Flash内容的更多信息。收件箱是一种商业解决方案,还将播放给定网站URL中的内容。 (提供的链接会将您定向到您必须使用的.NET代码)。

来源
Translate

斯文,您得出的结论与我所做的结论相同:我找到了Shockwave Flash对象,都是通过略有不同的路径进行的,但是对于如何从磁盘/ URL上的文件以外的其他位置加载文件感到困惑。的收件箱,虽然只是Shockwave Flash Object的包装似乎提供了更多功能,但这可能对我有帮助!

用火箭筒射击苍蝇可能很有趣,但是嵌入式网络浏览器并不是我想要的。 :)

Adobe网站上有一个链接,内容涉及“在C#Windows应用程序中嵌入和与Macromedia Flash Player进行通信”,但他们似乎已将其删除:(

来源