다음 예제에서는 Litware, Inc.라는 가상의 소프트웨어 개발 회사에서 LitwarePlayer라는 새 오디오 플레이어를 만듭니다. Litware는 전체 오디오 CD를 품질 손실 없이 10KB 미만의 메모리에 저장할 수 있도록 하는 새로 개발된 오디오 형식을 사용하는 LitwarePlayer와 기본 파일 형식 간의 파일 연결을 디자인하려고 합니다.
중요하다
이 항목은 Windows 10에는 적용되지 않습니다. Windows 10에서 기본 파일 연결이 작동하는 방식이 변경되었습니다. 자세한 내용은 이 게시물 의Windows 10에서 기본 앱을 처리하는 방법 에 대한 변경 사항 섹션을 참조하세요.
새로운 파일 연관성 설계
회사는 다음 단계를 수행해야 합니다.
새 파일 형식을 공용 또는 프라이빗으로 처리할지 여부를 결정합니다. 이 새 파일 형식은 미디어 형식입니다. 사용자가 다양한 플랫폼에서 미디어 파일을 교환하고 LitwarePlayer 형식을 읽어야 하는 다른 애플리케이션이 있을 수 있으므로 공용 파일 형식이 가장 적합합니다.
이 파일 형식이 이미 정의되어 있는지 확인합니다. IANA(Internet Assigned Numbers Authority) MIME 데이터베이스 및 인터넷의 다른 공용 파일 형식 데이터베이스를 확인하여 비교 가능한 파일 형식이 정의되지 않은지 확인합니다. 새 파일 형식이므로 새 파일 형식을 정의해야 합니다.
새 파일 형식의 파일 이름 확장명을 정의합니다. 개발자는 공급업체 약어와 파일에 포함된 항목에 대한 힌트를 통합하는
.opa-ltw-audio선택합니다. 연구는 확장이 다른 사람에 의해 사용되지 않는 것으로 결정. 현재 권장 사항에 따라 짧은 확장이 정의되지 않습니다.파일 형식에 대한 MIME 형식을 정의하고 IANA에 등록합니다. Litware는 새로운 MIME 형식을 audio/LitwarePlayer.1 정의하고 RFC(Request for Comments) 번호 2045, 2046, 2047 및 2048에 설명된 지침에 따라 MIME 형식 애플리케이션을 준비합니다. 그런 다음, 애플리케이션을 IANA에 제출하여 등록된 MIME 형식의 데이터베이스에 새 파일 형식을 추가합니다.
파일 형식에 대한 ProgID가 있는지 여부를 확인합니다. 새 파일 형식이므로 ProgID 없습니다. Litware는 LitwarePlayer를 위한 새 ProgID 설계를 시작합니다. 친숙한 이름 "LitwarePlayer Audio Player"(LitwarePlayer.exe 파일에 리소스로 저장됨)를 결정하고 LitwarePlayer와 연결된 파일(LitwarePlayer.exe저장됨)에 사용할 기본 아이콘을 디자인합니다. LitwarePlayer는 새 애플리케이션이므로 버전 1 ProgID입니다.
ProgID를 등록합니다. LitwarePlayer가 설치되면 설치 프로그램에서 레지스트리에 다음 ProgID 항목을 만듭니다.
HKEY_CLASSES_ROOT Litware.LitwarePlayer.1 (Default) = LitwarePlayer Audio Player FriendlyTypeName = @LitwarePlayer, -120 CurVer (Default) = Litware.LitwarePlayer.1 DefaultIcon (Default) = LitwarePlayer, -142 shell play command (Default) = "%ProgramFiles%\LitwarePlayer\LitwarePlayer.exe" "%1"명령 키에서 %1 재생할 파일의 경로로 전달됩니다.
파일 형식의 파일 이름 확장명을 등록합니다. LitwarePlayer가 설치되면 설치 프로그램에서 사용자 지정 파일 형식 확장자에 대해 레지스트리에 다음 항목을 만듭니다.
HKEY_CLASSES_ROOT .opa-vwi-audio (Default) = Litware.LitwarePlayer.1 PerceivedType = Audio Content Type = audio/LitwarePlayer
메모
파일 연결을 만들거나 변경할 때마다 SHCNE_ASSOCCHANGED 이벤트를 지정하여 SHChangeNotify호출하여 변경이 이루어졌다고 시스템에 알립니다. 이 작업이 수행되지 않으면 시스템이 다시 시작될 때까지 셸에서 변경 내용을 인식하지 못할 수 있습니다.
추가 리소스
- 파일 연결 소개
- Windows 시작 메뉴 인터넷 브라우저 또는 전자 메일 클라이언트를 등록하는 방법
- URI 체계에 애플리케이션 등록
관련 항목
-
Windows Vista 이상 기본 애플리케이션을 관리하기 위한 지침