다음 목록은 파일 연결을 사용할 때 사용해야 하는 모범 사례입니다.
- 레지스트리 파일 연결을 복사하지 마세요.
- 가능한 경우 레지스트리 경로를 피하십시오 Hard-Coding
- 항상 확장 문자열을 따옴표로 감싸세요
- 자동 재생/자동 실행을 파일 연결과 혼동하지 마세요.
- Internet Explorer MIME 데이터베이스와 파일 연결 혼동하지 마세요.
- 올바르게 형식화되고 버전 관리된 ProgIDs 사용
- 짧은 파일 이름 확장명 사용하지 마세요.
- IANA MIME 데이터베이스 새 파일 형식 등록
- Windows 웹 서비스에 파일 연결 등록하기
- 관련 항목
레지스트리에서 파일 연결 복사 안 함
레지스트리에서 기존 파일 연결을 복사하지 않는 것이 좋습니다. 이로 인해 잘못된 형식의 파일 연결이 전파되는 경우가 많습니다. 대신 파일 연결 샘플 시나리오설명된 단계를 따라야 합니다.
가능한 경우 레지스트리에 대한 Hard-Coding 경로 방지
프로그램에 대한 하드 코딩 경로로 인해 문제가 발생할 수 있는 것처럼 레지스트리에 대한 하드 코딩 경로도 문제가 발생할 수 있습니다. 대신 레지스트리 확장 문자열(REG_EXPAND_SZ)을 사용하여 해당하는 경로 독립성 제공을 수행해야 합니다. 예를 들어 다음 메서드를 사용하는 대신 다음을 수행합니다.
HKEY_CLASSES_ROOT
MyVendor.MyProgram.1
DefaultIcon
(Default) = C:\WINNT\hta.exe,1
이 메서드를 사용해야 합니다.
HKEY_CLASSES_ROOT
MyVendor.MyProgram.1
DefaultIcon
(Default) = "%SYSTEMROOT%\hta.exe,1"
항상 확장 문자열을 따옴표로 묶습니다.
확장 문자열은 확장할 때 공백을 포함할 수 있습니다. 공백은 종종 인수 구분 기호로 해석되기 때문에 특정 상황에서 문제가 발생합니다. 예를 들어 MyProgram을 호출하는 명령은 다음과 같이 레지스트리에 저장할 수 있습니다.
%SYSTEMROOT%\MyProgram %1 %2
MyProgram은 %1 파일 이름의 전체 경로이고 %2 일부 작업을 나타내는 스위치라고 예상합니다. 이 명령이 인수 C:\Program Files\My Documents\document.txt 및 /print사용하여 실행되고 C:\WINNT의 SYSTEMROOT를 가정하면 다음으로 확장됩니다.
C:\WINNT\MyProgram C:\Program Files\My Documents\document.txt /print
이 경우 MyProgram은 첫 번째 인수가 C:\Program이고 두 번째 인수는 의도한 동작이 아닌 Files\My임을 해석합니다. 그러나 확장 문자열이 다음과 같이 따옴표로 묶이면 인수가 공백을 포함하는지 여부에 관계없이 올바르게 해석됩니다.
"%SYSTEMROOT%\MyProgram" "%1" "%2"
자동 실행/자동 실행을 파일 연결과 혼동하지 마세요.
파일 연관은 몇 가지 면에서 자동 실행/오토런과 유사합니다. 그러나 자동 실행/자동 실행은 파일 연결에서 제공하는 기능과 별개의 기능을 제공합니다. 자세한 내용은 자동 실행 사용 CD-ROM 애플리케이션만들기를 참조하세요.
Internet Explorer MIME 데이터베이스를 파일 연결과 혼동하지 마세요.
파일 연결은 Windows Internet Explorer MIME 데이터베이스와 유사하며, 파일 형식에 MIME 형식 정의를 포함할 수 있고 포함해야 합니다. 그러나 Internet Explorer MIME 데이터베이스는 파일 연결과 별개입니다.
올바르게 형성되고 버전 관리된 ProgID를 사용하세요
항상 버전이 지정된 ProgID을 사용하십시오, ProgID 버전이 하나뿐인 경우에도. 버전이 지정된 ProgID는 ProgID 충돌 및 덮어쓰기를 방지하는 데 도움이 됩니다. 또한 서로 다른 버전의 애플리케이션이 공존할 수 있도록 합니다.
짧은 파일 이름 확장명을 사용하지 마세요.
긴 파일 이름 확장명은 다음과 같은 이점을 제공합니다.
- 짧은 확장의 길이가 제한되어 있어 확장 충돌이 발생하기 쉽습니다. 확장 충돌은 여러 파일 형식을 분류하는 데 동일한 확장자를 사용할 때 발생합니다. 긴 확장을 사용하면 충돌 가능성이 크게 줄어듭니다.
- 짧은 파일 이름은 다소 비밀스러운 경향이 있습니다. 확장에 추가 정보를 포함할 수 있으므로 긴 확장은 더 의미 있는 경향이 있습니다.
IANA MIME 데이터베이스에 새 파일 형식 등록
IANA(Internet Assigned Numbers Authority)는 등록된 MIME 형식의 공용 데이터베이스를 유지합니다. 새 공용 파일 형식을 정의할 때 파일 형식에 대한 MIME 형식도 정의하고 이 형식을 IANA에 등록하는 것이 좋습니다. 등록 비용은 없습니다.
파일 연결에 대한 Windows 웹 서비스에 등록
애플리케이션 개발자는 사용자가 특정 파일 형식에서 작동할 수 있는 애플리케이션을 찾는 데 사용하는 Windows 웹 서비스에 등록할 수 있습니다. 웹 서비스에 등록하는 프로세스는 Windows 파일 연결 시스템 온보딩 프로세스(KB 929149)에 자세히 설명되어 있습니다.
관련 항목
-
Windows Vista 이상 기본 애플리케이션을 관리하기 위한 지침