사용자 지정 작업 유형 5

이 사용자 지정 작업은 ECMA 262와 같은 JScript로 작성됩니다. Windows Installer는 JScript 1.0을 지원하지 않습니다. 자세한 내용은 스크립트를 참조하세요.

원본

스크립트는 임시 이진 스트림에서 생성됩니다. CustomAction 테이블의 Source 필드에는 Binary 테이블에 대한 키가 포함되어 있습니다. Binary 테이블의 Data 열에는 스트림 데이터가 포함됩니다. 각 행에 별도의 스트림이 할당됩니다.

MsiRecordSetStream 다음에 MsiViewModify를 사용하여 레코드를 테이블에 삽입하는 방식으로 파일에서 새 이진 데이터를 삽입할 수 있습니다. 사용자 지정 작업이 호출되면 스트림 데이터가 임시 파일에 복사된 다음, 사용자 지정 작업의 유형에 따라 처리됩니다.

Type 값

CustomAction 테이블의 Type 열에 다음 값을 포함하여 32비트 사용자 지정 작업의 기본 숫자 형식을 지정합니다.

상수 16진수 Decimal
msidbCustomActionTypeJScript + msidbCustomActionTypeBinaryData 0x05 5

 

Windows Installer는 64비트 운영 체제에서 64비트 사용자 지정 작업을 사용할 수 있습니다. 스크립트를 기반으로 하는 64비트 사용자 지정 작업의 숫자 형식에 msidbCustomActionType64BitScript 비트가 포함되어야 합니다. 자세한 내용은 64비트 사용자 지정 작업을 참조하세요. CustomAction 테이블의 Type 열에 다음 값을 포함하여 64비트 사용자 지정 작업의 기본 숫자 형식을 지정합니다.

상수 16진수 Decimal
msidbCustomActionTypeJScript + msidbCustomActionTypeBinaryData + msidbCustomActionType64BitScript 0x0001005 4101

 

대상

CustomAction 테이블의 Target 필드에는 선택적 스크립트 함수가 들어 있습니다. 처리는 먼저 구문 분석을 위한 스크립트를 보낸 다음, 선택적 스크립트 함수를 호출합니다.

반환 처리 옵션

CustomAction 테이블의 Type 열에 선택적 플래그 비트를 포함하여 반환 처리 옵션을 지정합니다. 옵션 및 값에 대한 설명은 사용자 지정 작업 반환 처리 옵션을 참조하세요.

실행 예약 옵션

CustomAction 테이블의 Type 열에 선택적 플래그 비트를 포함하여 실행 예약 옵션을 지정합니다. 이러한 옵션은 사용자 지정 작업의 여러 실행을 제어합니다. 옵션에 대한 설명은 사용자 지정 작업 실행 예약 옵션을 참조하세요.

스크립트 내 실행 옵션

CustomAction 테이블의 Type 열에 선택적 플래그 비트를 포함하여 스크립트 내 실행 옵션을 지정합니다. 이러한 옵션은 실행, 롤백 또는 커밋 스크립트에 작업 코드를 복사합니다. 옵션에 대한 설명은 사용자 지정 작업 스크립트 내 실행 옵션을 참조하세요.

반환 값

스크립트로 작성된 선택적 함수는 JScript 및 VBScript 사용자 지정 작업의 반환 값에 설명된 값 중 하나를 반환해야 합니다.

설명

JScript 또는 VBScript로 작성된 사용자 지정 작업에는 Session 개체를 설치해야 합니다. 설치 관리자는 이름이 Session인 스크립트에 Session 개체를 연결합니다. 설치 롤백 중에 Session 개체가 없을 수 있으므로 스크립트로 작성된 지연된 사용자 지정 작업은 지연된 실행 사용자 지정 작업에 대한 컨텍스트 정보 가져오기 섹션에 설명된 Session 개체의 메서드 또는 속성 중 하나를 사용하여 컨텍스트를 검색해야 합니다.

데이터베이스 테이블을 내보낼 때 각 스트림은 기본 키를 파일 이름(Binary 테이블의 Name 열)으로 사용하고 기본 확장명이 ".ibd"인 테이블 이름을 딴 하위 폴더에 별도의 파일로 작성됩니다. 파일 시스템 또는 버전 제어 시스템에서 긴 파일 이름을 지원하지 않는 경우 이름은 8.3 파일 이름 형식을 사용해야 합니다. 영구 보관 파일은 스트림 데이터를 사용된 파일 이름으로 바꾸므로 테이블을 가져올 때 데이터를 찾을 수 있습니다.

Custom_Actions