다음을 통해 공유


MsiAssembly 테이블

MsiAssembly 테이블은 Microsoft .NET Framework 어셈블리 및 Win32 어셈블리에 대한 Windows Installer 설정을 지정합니다. 자세한 내용은 전역 어셈블리 캐시 어셈블리 설치 및 Win32 어셈블리 설치를 참조하세요.

Windows XP에서 Windows Installer는 병렬 어셈블리 Win32 어셈블리를 설치할 수 있습니다. 자세한 내용은 Side-by-Side 어셈블리 API참조하세요.

Windows 2000: 이 기능은 지원되지 않습니다.

MsiAssembly 테이블에는 다음 열이 있습니다.

열쇠 Nullable
구성 요소_ 식별자 Y N
특징_ 식별자 N N
File_Manifest 식별자 N Y
File_Application 식별자 N Y
특성 정수 N Y

 

Component_

이 어셈블리를 포함하는 Windows Installer 구성 요소를 지정하는 구성 요소 테이블 키입니다.

이 필드의 값을 null로 설정하면 안 됩니다. 구성 요소 테이블 구성 요소 KeyPath 필드는 null이 아니어야 합니다.

Win32 어셈블리의 경우 구성 요소 KeyPath는 File_Manifest 지정된 매니페스트 파일이 될 수 없습니다. 매니페스트는 .NET Framework 또는 정책 어셈블리의 키 경로일 수 있습니다.

Feature_

기능 테이블키를 누릅니다.

기능 설치를 통해 어셈블리를 설치해야 하는 경우 Windows Installer는 이 필드가 가리키는 기능을 설치합니다.

File_Manifest

.NET Framework 어셈블리 또는 Win32 어셈블리에 대한 매니페스트를 포함하는 파일을 지정하는 파일 테이블 외부 키입니다.

Win32 어셈블리의 경우 이 파일을 구성 요소 테이블KeyPath 필드에서 구성 요소 키 경로 파일로 지정하지 마세요.

File_Application

프라이빗 위치에 어셈블리를 설치하려면 이 필드에 어셈블리 구성 요소의 키 경로 파일을 입력합니다.

구성 요소 테이블KeyPath 필드에 표시되는 값입니다. 그런 다음 설치 관리자는 Directory Table지정된 구성 요소의 디렉터리 구조에 어셈블리를 설치할 수 있습니다. 어셈블리를 전역 어셈블리 캐시에 설치하려면 이 필드는 null이어야 합니다.

특성

Win32 어셈블리의 값을 1(1)로 입력합니다. .NET Framework 어셈블리의 값을 0으로 입력합니다.

특성 열이 NULL이면 설치 관리자는 어셈블리를 .NET Framework 어셈블리로 처리합니다.

발언

MsiAssembly 테이블에 항목이 하나 이상 있는 경우 InstallExecuteSequence 테이블MsiPublishAssemblies 작업및 msiUnpublishAssemblies 작업 포함되어야 합니다.

커밋된 후에는 어셈블리를 롤백할 수 없으므로 Windows Installer는 2단계 설치 프로세스를 사용합니다. 어셈블리에 대한 인터페이스는 MsiPublishAssemblies 작업의해 생성되는 설치 작업 중에 만들어집니다.

InstallFinalize Action성공적으로 실행될 때까지 어셈블리가 커밋되지 않습니다. 즉, 어셈블리를 사용하는 사용자 지정 작업 또는 리소스를 작성하는 경우 InstallFinalize 작업후에 순서를 지정해야 합니다. 예를 들어 GAC(전역 어셈블리 캐시)의 어셈블리에 의존하는 서비스를 시작해야 하는 경우 InstallFinalize 작업후에 해당 서비스의 시작을 예약해야 합니다. 즉, ServiceControl 테이블 사용하여 서비스를 시작할 수 없으며, 대신 InstallFinalize 이후 시퀀스되는 사용자 지정 작업을 사용해야 합니다.

유효성 검사

ice03
ICE06
ICE32
ICE66
ICE83
ice94