Flash Movie 실행하기

사용자 삽입 이미지

사용자 삽입 이미지

WPF에서 Flash Movie를 재생하는 데모를 만들어보겠습니다. ActiveX 컨트롤 사용하는 방법과 동일하며 AxInterop.ShockwaveFlashObjects.dll 이 필요합니다. dll이 로컬에 존재한다면 참조에 추가하면 되고 없으면 여기에서 다운로드 받으시면 됩니다.


 


AxInterop.ShockwaveFlashObjects.dll이 추가되었습니다.


로컬에 있는 Flash Movie를 가져와 WPF에서 재생을 합니다.


xaml code
<Window x:Class="WPFControlSwf.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="400" Width="400">
    <Grid x:Name="grid">
    </Grid>
</Window>

cs code
using System.Windows;
 
using System.Windows.Forms.Integration;
using AxShockwaveFlashObjects;
 
namespace WPFControlSwf
{
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
 
            this.Loaded += new RoutedEventHandler(Window1_Loaded);
        }
 
        void Window1_Loaded(object sender, RoutedEventArgs e)
        {
 
            WindowsFormsHost host = new WindowsFormsHost();
 
            AxShockwaveFlash swfPlayer = new AxShockwaveFlash();
            host.Child = swfPlayer;
 
            grid.Children.Add(host);
            swfPlayer.Movie = "c://flash.swf";
            swfPlayer.Play();
        }
    }
}

코드 설명
using AxShockwaveFlashObjects;
Flash 관련 네임스페이스를 선언합니다.

swfPlayer.Movie = "c://flash.swf";
swfPlayer.Play();
Movie프로퍼티는 Flash Movie 경로를 지정하고 Play() 메소드는 WPF 프로그램이 실행될때 Flash Movie를 자동으로 재생하도록 합니다.

Summary  
 전자문서나 전자도서 같은 프로그램에서 모든 콘텐츠를 WPF나 Silverlight로 개발하기에 한계가 있으므로 전자도서의 컨텐츠를 개발했을때 그 컨텐츠를 이용하기 위한 좋은 방법이 될것입니다. 제가 얼마전에 참여했던 디지털 교과서가 그 좋은 예라 할수 있습니다. 그리고 ActiveX로 개발된 컨텐츠라면 그 어떤것도 WPF에서 실행할 수가 있습니다.