다음을 통해 공유


SPEAKN 샘플: 사용자 정의 리소스를 사용한 멀티미디어 사운드

업데이트: 2007년 11월

SPEAKN 샘플에서는 그래픽 출력과 사운드 출력을 결합합니다. 또한 SPEAKN 샘플에서는 다음의 프로그래밍 기술을 사용하여 멀티미디어 확장을 보여 줍니다.

  • Windows SDK MMSYSTEM.H 헤더 파일에 정의된 멀티미디어 API를 사용하여 사운드 출력 구현

  • 사용자 정의 리소스를 사용하여 사운드 및 비트맵 등의 멀티미디어 데이터 저장. 사용자 정의 리소스를 Microsoft Visual C++에서 직접 유지 관리하지 않고 별도의 .rc 파일에 유지하는 방법에 대한 자세한 내용은 Technical Note 35: Using Multiple Resource Files and Header Files with Visual C++을 참조하십시오.

  • 비트맵 단추 사용. CTRLTEST 샘플에서는 CBitmapButton의 사용 방법을 보다 자세하게 보여 줍니다.

사운드 출력을 들으려면 사운드 카드가 필요합니다. 그러나 사운드 카드가 없어도 응용 프로그램을 실행할 수는 있습니다.

보안 정보:

이 샘플 코드는 개념을 보여 주기 위해 제공되며 가장 안전한 코드 작성 방법을 제시하지 않을 수 있으므로 응용 프로그램이나 웹 사이트에서 사용할 수 없습니다. Microsoft는 샘플 코드를 원래 용도 이외의 다른 용도로 사용하는 경우 발생하는 부수적이나 파생적인 손해에 대해 책임을 지지 않습니다.

샘플 및 이를 설치하기 위한 지침을 가져오려면

  • Visual Studio의 도움말 메뉴에서 샘플을 클릭합니다.

    자세한 내용은 샘플 파일 찾기를 참조하십시오.

  • 최신 버전 및 전체 샘플 목록은 Visual Studio 2008 Samples 페이지에서 온라인으로 사용할 수 있습니다.

  • 컴퓨터의 하드 디스크에서도 샘플을 찾을 수 있습니다. 기본적으로 샘플과 추가 정보 파일은 \Program Files\Visual Studio 9.0\Samples\ 아래의 폴더에 복사됩니다. Visual Studio Express Edition의 경우에는 모든 샘플이 온라인에 있습니다.

샘플 빌드 및 실행

SPEAKN 샘플을 빌드하고 실행하려면

  1. 솔루션 파일인 Speakn.sln을 엽니다.

  2. 빌드 메뉴에서 빌드를 클릭합니다.

  3. 디버그 메뉴에서 디버깅하지 않고 시작을 클릭합니다.

SPEAKN을 처음 실행하면 "welcome"이라는 사운드가 재생되고 What is this 대화 상자가 표시됩니다. 사운드 재생이 완료되면 SPEAKN에서는 첫 번째 이미지 시리즈인 개 사진을 표시합니다. 입력란에 "dog"를 입력합니다. 올바른 단어를 입력하면 SPEAKN에서는 해당 단어의 사운드를 출력한 후 다음 이미지를 표시합니다.

처음에는 행복한 얼굴 모양의 비트맵에 웃는 모습이나 찡그리는 모습이 표시되지 않습니다. 사용자가 입력한 첫 번째 문자가 올바르면 이 얼굴이 웃는 모습으로 변하고 올바르지 않으면 찡그리는 모습으로 변합니다.

키워드

이 샘플에서는 다음의 키워드를 보여 줍니다.

AfxGetResourceHandle; AfxMessageBox; CBitmapButton::AutoLoad; CBitmapButton::LoadBitmaps; CDialog::DoModal; CDialog::EndDialog; CDialog::OnInitDialog; CDialog::OnOK; CFont::CreateFontIndirect; CString::GetLength; CString::IsEmpty; CString::LoadString; CString::MakeUpper; CWinApp::InitInstance; CWnd::DoDataExchange; CWnd::EnableWindow; CWnd::GetDlgItem; CWnd::GetWindowText; CWnd::Invalidate; CWnd::SetFocus; CWnd::SetFont; CWnd::SetWindowText; CWnd::ShowWindow; CWnd::SubclassDlgItem; CWnd::UpdateData; CWnd::UpdateWindow; DestroyIcon; FindResource; FreeResource; LoadIcon; LoadResource; LockResource; MAKEINTRESOURCE; PlaySound; PostQuitMessage; lstrcpy; mbstowcs; memset; sndPlaySound; strnlen

참고:

이 샘플을 비롯한 일부 샘플은 Visual C++ 마법사, 라이브러리 및 컴파일러의 변경 내용을 반영하도록 수정되지 않았지만 해당 작업의 수행 방법을 보여 줍니다.

참고 항목

기타 리소스

MFC 샘플