InstallValidate 작업
InstallValidate 작업은 비용모든볼륨이 설치를 위한 충분한 공간을 가지고 있음을 확인합니다. 볼륨이 디스크 공간이 부족한 경우 InstallValidate 작업은 심각한 오류로 설치를 종료합니다.
또한 InstallValidate 작업은 현재 활성 프로세스에서 덮어쓰거나 제거할 파일이 하나 이상 사용 중인지 사용자에게 알합니다. 자세한 내용은 시스템 다시 부팅참조하세요.
시퀀스 제한
CostFinalize 작업 및 사용자가 선택 상태 및/또는 디렉터리를 수정할 수 있는 모든 UI 대화 상자 시퀀스는 InstallValidate 작업 전에 시퀀스되어야 합니다.
기능 또는 구성 요소의 설치 상태를 변경하는 사용자 지정 작업 InstallValidate 작업 전에 순서를 지정해야 합니다.
ActionData 메시지
ActionData 메시지가 없습니다.
발언
일반적으로 이전 UI 대화 상자 시퀀스는 사용자가 파일 복사를 시작하려고 할 때 InstallValidate 작업과 동일한 확인을 수행해야 합니다. 이 UI 대화 상자 시퀀스는 선택한 볼륨에 설치할 공간이 부족한 경우 디스크 공간 대화 상자를 표시해야 합니다. 디스크 공간이 부족한 경우 사용자가 설치를 진행하지 못하도록 UI 대화 상자를 작성해야 합니다. 자동 설치의 경우 사용자 인터페이스가 없으며 디스크 공간이 부족한 경우 InstallValidate 작업이 설치를 종료합니다. 로깅을 사용하는 경우 조기 종료의 원인은 로그 파일에 기록됩니다.
파일 비용동안 프로세스에 의해 실행 또는 수정을 위해 열려 있는 동안 파일을 덮어쓰거나 제거한 경우 항목이 내부 FilesInUse 테이블에 추가됩니다. FilesInUse 테이블에는 파일의 이름 및 전체 경로에 대한 열이 포함되어 있습니다. InstallValidate 작업이 실행되면 설치 관리자는 FilesInUse 테이블에 항목을 쿼리하고 파일을 사용하여 프로세스의 이름을 결정합니다. InstallValidate 작업은 이 쿼리로 식별되는 각 고유 프로세스에 대해 ListBox 사용자 인터페이스 테이블에 하나의 레코드를 추가합니다. 레코드에는 각 열에 다음 값이 포함됩니다.
속성: FileInUseProcess
값: 프로세스 이름
텍스트: 프로세스 주 창의 캡션에 포함된 텍스트
그런 다음 InstallValidate 작업은 파일 사용 대화 상자를 표시합니다. 이 대화 상자에는 사용 중인 파일을 바꾸기 위해 시스템을 다시 시작해야 하는 요구 사항을 방지하기 위해 종료해야 하는 프로세스가 표시됩니다.
InstallValidate 작업은 Dialog 테이블에서 예약된 이름 FilesInUse 대화 상자를 사용하여 만든 대화 상자를 쿼리하고 표시합니다. 이 대화 상자에는 FileInUseProcess라는 속성에 연결된 ListBox 컨트롤이 포함되어야 합니다. 규칙에 따라 이 대화 상자에는 끝내기, 다시 시도또는 무시 단추가 있지만 이는 UI 작성자에 달려 있습니다. 각 단추는 ControlEvent 테이블의 EndDialog ControlEvent에 연결되어야 합니다. InstallValidate 작업은 사용자가 누른 단추와 연결된 이러한 EndDialog 인수 중 하나에 의해 결정되는 대로 DoAction ControlEvent에서 반환된 값에 다음과 같이 응답합니다.
다시 시도: ListBox 테이블에 추가된 모든 값이 지워지고 전체 파일 프로시저 비용이 반복되어 여전히 사용 중인 파일을 다시 확인합니다. 하나 이상의 프로세스를 덮어쓰거나 삭제할 파일을 사용하는 것으로 식별되는 경우 프로세스가 반복됩니다. 그렇지 않으면 InstallValidate는 msiDoActionStatusSuccess 상태의 설치 관리자에 컨트롤을 반환합니다.
종료: InstallValidate 작업은 즉시 msiDoActionStatusUserExit 상태의 설치 관리자에 컨트롤을 반환합니다. 그러면 설치가 종료됩니다.
다른 반환 값: InstallValidate 작업은 msiDoActionStatusSuccess 상태의 설치 관리자에 대한 컨트롤을 즉시 반환합니다. 이 경우 하나 이상의 파일이 계속 사용 중이므로 후속 InstallFiles 및/또는 InstallAdminPackage 작업은 시스템을 다시 시작할 때 사용 중인 파일을 교체하거나 삭제하도록 예약해야 합니다.
데이터베이스에 ListBox 테이블이 없으면 InstallValidate가 오류 없이 자동으로 종료됩니다.
세미콜론은 변환, 원본 및 패치에 대한 목록 구분 기호이며 이러한 파일 이름이나 경로에 사용하면 안 됩니다.
읽기 전용 위치에 읽기 전용으로 표시된 파일은 설치 관리자가 사용하는 것으로 간주되지 않습니다.
사용자 인터페이스 수준이 기본인 경우 중단 및 다시 시도 단추가 포함된 기본 디스크 공간 대화 상자가 사용자에게 표시됩니다.