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

时间:2008-08-04 05:35:52

标签: c# winforms flash adobe macromedia

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

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

2 个答案:

答案 0 :(得分:29)

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

一旦添加到工具箱中,只需使用控件,就像使用visual studio中的任何其他“标准”控件一样。

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

  • AxShockwaveFlash1.Stop()
  • AxShockwaveFlash1.Movie = FilePath& “\ FileName.swf”
  • AxShockwaveFlash1.Play()
我认为,这些都是不言自明的。

  

能够加载会很棒   来自流的flash内容   排序而不是磁盘上的文件。

我刚看到你也在寻找一种从流中加载内容的方法, 因为我不确定是否可以使用shockwave flash对象,我会给你另一种选择(实际上是两个)。

第一个是我建议您仅在必要时使用的那个,因为它使用完整的“webbrowser组件”(也可用作额外的工具箱项),这就像尝试用火箭筒射一只苍蝇。 当然它会起作用,因为控件将充当a real browser window(实际上是Internet Explorer浏览器),但它并不真正意味着以你需要的方式使用它。

第二个选项是在查找有关在Windows窗体中播放Flash内容的更多信息时使用我刚刚发现的内容。 F-IN-BOX是一种商业解决方案,也可播放指定网站网址的内容。 (提供的链接将指向您必须使用的.NET代码。)

答案 1 :(得分:7)

Sven,你得到了与我相同的结论:我找到了Shockwave Flash对象,都是从一个稍微不同的路线,但是被困在如何从磁盘上的文件以外的地方加载文件/ URL。 F-IN-BOX,虽然只是Shockwave Flash对象的包装似乎提供了更多的功能,这可能只是帮助我!

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

Adob​​e网站上有一个链接,谈到“在C#Windows应用程序中嵌入和与Macromedia Flash Player进行通信”,但它们似乎已将其删除:(