본문 바로가기

Programming/Win32&MFC&COM

MFC에 플래시(Flash) ActiveX 컨트롤 추가하기

반응형

최근 웹에서 플래시를 많이 걷어내는 추세입니다.

보안 등 여러 문제가 많이 발생하기 때문에 최근에는 잘 사용하지 않는 방향으로 개발을 합니다.

그래도 swf 파일 등을 MFC에서 출력하는 상황이 생깁니다.

MFC에 Flash 컨트롤을 추가해서 swf 파일을 재생하는 방법입니다.

Visual Studio 2015를 기준으로 설명하도록 하겠습니다.

먼저 MFC 프로젝트를 생성합니다.

간단하게 테스트하기 위해 다이얼로그 기반 프로젝트로 생성합니다.

MFC 라이브러리를 static으로 사용하는 것 외에 다른 설정은 변경하지 않았습니다.

리소스 뷰(Resource View)의 다이얼로그를 열고 ActiveX 컨트롤을 추가합니다.

다이얼로그 화면에서 마우스 오른쪽 클릭하면 메뉴가 표시됩니다.

Insert ActiveX Control을 선택하면 됩니다.

ActiveX 컨트롤 중에서 Shockwave Flash Object를 선택합니다.

화면에 검은색의 컨트롤이 추가되는데 Flash 컨트롤입니다.

컨트롤 ID는 원하는 값으로 변경해서 사용하면 됩니다.

컨트롤 위에서 마우스 오른쪽 클릭을 하면 표시되는 메뉴에서 Add Variable을 선택합니다.

다음과 같이 다이얼로그가 표시됩니다.

화면의 Variable name 부분에 변수 이름을 입력하고 Finish를 누르면 됩니다.

다이얼로그 코드에 컨트롤 변수가 생기고 DDX_Control()로 연결됩니다.

이제 플래시 파일을 불러오면 됩니다.

다이얼로그의 OnInitDialog()의 아래 부분에 다음과 같은 코드를 추가합니다.

m_flashCtrl.put_Movie(_T("D:\\SampleFlash.swf"));
m_flashCtrl.put_Loop(FALSE);
m_flashCtrl.Play();

플래시 파일 경로를 put_Movie()에 전달하면 됩니다.

정상적으로 실행되면 다음과 같이 화면에 표시됩니다.

원하는 플래시 파일을 사용해서 화면에 표시하면 됩니다.

간단하게 플래시 컨트롤이 화면에 추가됩니다.

반응형