다음을 통해 공유


서식 있음

서식 있는 데이터 형식은 포함된 속성 이름, 테이블 키, 환경 변수 참조, 기타 특수 부분 문자열을 확인하기 위해 처리되는 텍스트 문자열입니다. 문자열을 확인하기 위해 다음 규칙이 인식됩니다.

  • 일치하는 쌍이 없는 대괄호([ ]) 또는 중괄호({ })는 텍스트에 남아 있습니다.

  • [propertyname] 양식의 부분 문자열이 발견되면 속성 값으로 바뀝니다. propertyname이 유효한 속성 이름이 아니면 부분 문자열이 비어 있는 것으로 확인됩니다. 예를 들어 LaunchCondition 테이블의 Description 열은 서식 있는 문자열을 사용합니다. ERRORTXT가 “지원 담당자에게 문의하세요”로 설정된 경우 시작 조건 실패 시 표시되는 텍스트에 이 문자열이 포함됩니다. ERRORTXT가 설정되지 않은 경우 시작 조건 실패 시 텍스트는 “시스템이 설치 요구 사항을 충족하지 않습니다.”라는 텍스트만 표시됩니다.

    조건 설명
    Version9x 시스템이 설치 요구 사항을 충족하지 않습니다. [ERRORTXT]

     

  • 대괄호는 반복될 수 있으며 속성 이름은 내부에서 외부로 확인됩니다. 예를 들어 텍스트에 부분 문자열 [[PropertyA]]가 표시되어 있다고 가정합니다. 먼저 PropertyA 속성 값이 검색됩니다. 값이 PropertyB와 같은 유효한 속성 이름인 경우 PropertyB 값이 검색되고 전체 부분 문자열 [[PropertyA]]가 PropertyB 값으로 대체됩니다. PropertyA가 유효한 속성 이름이 아니거나 PropertyA 값이 유효한 속성 이름이 아니면 부분 문자열이 비어 있습니다.

  • [%environmentvariable] 형식의 부분 문자열이 있으면 환경 변수의 값이 부분 문자열로 대체됩니다.

  • [\x] 형식의 부분 문자열이 있으면 x 문자로 바뀝니다. 여기서 x는 추가 처리 없는 하나의 문자입니다. 백슬래시 뒤의 첫 번째 문자만 유지되고 다른 모든 항목은 제거됩니다. 예를 들어 리터럴 왼쪽 대괄호([)를 포함하려면 [\[]를 사용합니다. [\[]대괄호 텍스트[\]] 텍스트가 [대괄호 텍스트]로 확인됩니다.

  • 부분 문자열이 중괄호({ })로 묶이고 대괄호([ ])로 묶인 속성 이름이 없는 경우 부분 문자열은 중괄호를 포함하여 변경되지 않은 상태로 유지됩니다.

  • 부분 문자열이 중괄호({ })로 묶이고 대괄호([ ])로 묶인 속성 이름이 하나 이상 포함된 경우 모든 속성 이름이 유효하면 중괄호 없이 텍스트(확인된 대체 항목 포함)가 표시됩니다.

  • [~] 양식의 부분 문자열이 있으면 null 문자로 바뀝니다. 레지스트리 테이블에서 REG_MULTI_SZ 문자열을 작성하는 데 사용됩니다. [~]는 환경 테이블을 사용하여 환경 변수에 값을 추가하거나 접두사로 사용하는 데도 사용됩니다.

  • [#filekey] 양식의 부분 문자열이 있는 경우 파일의 전체 경로로 대체되고 filekey 값은 File 테이블의 키로 사용됩니다. [#filekey] 값은 비어 있으며 설치 관리자가 CostInitialize action, FileCost action, CostFinalize 작업을 실행할 때까지 경로로 대체되지 않습니다. [#filekey] 값은 파일이 속한 구성 요소의 설치 상태에 따라 달라집니다. 구성 요소가 원본에서 실행되는 경우 값은 파일의 원본 위치에 대한 경로입니다. 구성 요소가 로컬로 실행되는 경우 값은 설치 후 파일의 대상 위치에 대한 경로입니다. 구성 요소에 작업 상태가 없는 경우 구성 요소의 설치된 상태를 사용하여 [)를 결정합니다.

  • [$componentkey] 양식의 부분 문자열이 있는 경우 구성 요소의 설치 디렉터리로 대체되고 componentkey 값은 구성 요소 테이블의 키로 사용됩니다. [#componentkey] 값은 비어 있으며 설치 관리자가 CostInitialize action, FileCost action, CostFinalize 작업을 실행할 때까지 디렉터리로 대체되지 않습니다. [$componentkey] 값은 구성 요소의 설치 상태와 구성 요소의 발생 위치에 따라 달라집니다. 레지스트리 테이블의 Value 열에서 이 부분 문자열은 구성 요소의 작업 상태 또는 요청된 작업 상태를 참조할 수 있습니다. 다른 모든 경우에서 이 부분 문자열은 구성 요소의 작업 상태를 나타냅니다. 예를 들어 구성 요소가 원본에서 실행되는 경우 값은 파일의 원본 디렉터리입니다. 구성 요소가 로컬로 실행되는 경우 값은 설치 후 대상 디렉터리입니다. 구성 요소가 없으면 값은 비어 있습니다. Windows Installer는 구성 요소의 작업 및 요청된 설치 상태를 모두 추적합니다. 예를 들어 구성 요소가 이미 설치된 경우 요청된 로컬 상태와 작업 상태가 null일 수 있습니다. 구성 요소의 설치 상태를 확인하는 방법에 대한 자세한 내용은 기능, 구성 요소, 파일 설치 확인을 참조하세요.

  • 구성 요소가 이미 설치되어 있고 현재 설치 중에 다시 설치, 제거 또는 이동되지 않은 경우 구성 요소의 작업 상태는 null이고 문자열 [$componentkey]는 Null로 평가됩니다.

  • [#filekey] 양식의 부분 문자열이 있는 경우 파일의 전체 짧은 경로로 대체되고 filekey 값은 File 테이블의 키로 사용됩니다.

    이 구문은 레지스트리 또는 IniFile 테이블의 값 열에 사용되는 경우에만 유효합니다. 다른 열에서 사용하는 경우 이 구문은 [#filekey]와 동일하게 처리됩니다.