ICE38

ICE38은 현재 사용자의 프로필 아래에 설치되는 모든 구성 요소가 Component 테이블의 KeyPath 열에 있는 HKEY_CURRENT_USER 루트 아래에서 레지스트리 키를 지정하는지 확인합니다.

결과

ICE38은 사용자 프로필 아래에 설치된 구성 요소가 HKCU 레지스트리 키를 지정하지 않는 경우 오류를 게시합니다.

ICE38은 표시된 예제에 대해 다음 오류를 보고합니다.

ICE38 오류 설명
Component1 구성 요소가 사용자 프로필에 설치됩니다. HKCU의 레지스트리 키를 파일이 아닌 KeyPath로 사용해야 합니다. Component1의 Attributes 열 값이 0입니다. 따라서 구성 요소는 파일을 KeyPath로 사용해야 합니다. 이로 인해 여러 사용자가 동일한 컴퓨터에 구성 요소를 설치할 때 문제가 발생합니다. Component1에서 이 오류를 해결하려면 Component 테이블의 Attributes 열에서 RegistryKeyPath 비트를 설정하고 KeyPath 열의 항목을 Registry 테이블의 Registry 열에 나열된 값으로 변경합니다.
Component2 구성 요소가 사용자 프로필에 설치됩니다. HKCU의 레지스트리 키를 KeyPath로 사용해야 합니다. KeyPath는 현재 NULL입니다. Component2는 Component 테이블의 Attributes 열에 RegistryKeyPath 비트가 설정되어 있습니다. 따라서 KeyPath 필드에는 Registry 테이블의 Registry 열에 대한 키가 포함되어야 하지만 KeyPath 열은 Null입니다. 이 오류를 해결하려면 KeyPath 값을 Registry 테이블의 유효한 항목으로 변경합니다.
Component3 구성 요소가 사용자 프로필에 설치됩니다. KeyPath 레지스트리 키는 HKCU 아래에 있어야 합니다. Component3은 Component 테이블의 Attributes 열에 RegistryKeyPath 비트가 설정되어 있지만 Registry 테이블의 Root 열에 지정된 레지스트리 항목의 루트는 HKEY_CURRENT_USER가가 아닌 HKEY_LOCAL_MACHINE을 지정합니다. 이 오류를 해결하려면 HKEY_LOCAL_MACHINE 아래의 유효한 레지스트리 항목을 이 구성 요소의 KeyPath로 사용하거나 Registry 테이블의 Root 열에 있는 값을 -1 또는 1로 변경합니다.
Component4 구성 요소에 대한 KeyPath 레지스트리 항목이 없습니다. Component4는 Component 테이블의 Attributes 열에 RegistryKeyPath 비트가 설정되어 있지만 KeyPath 열의 항목이 Registry 테이블에 없습니다. 이 오류를 해결하려면 HKEY_CURRENT_USER 아래에 있는 Reg4에 대한 항목을 Registry 테이블에 추가합니다.
레지스트리 항목 Reg5는 Component5 구성 요소의 KeyPath로 설정되지만 해당 레지스트리 항목은 Component5에 속하지 않습니다. 구성 요소의 KeyPath 열에서 참조되는 레지스트리 항목이 발견되고 HKCU 트리 아래에 있는 있지만 레지스트리 항목의 Component_ 열은 KeyPath로 나열된 동일한 구성 요소를 다시 참조하지 않습니다. 즉, 구성 요소의 KeyPath로 사용되는 레지스트리 항목은 다른 구성 요소가 설치된 경우에만 만들어집니다. 이 오류를 해결하려면 구성 요소에 속하는 레지스트리 항목을 참조하도록 KeyPath 값을 변경하거나 KeyPath로 사용하여 구성 요소에 속하도록 레지스트리 항목을 변경합니다.

 

Directory 테이블(부분)

디렉터리 Directory_Parent DefaultDir
Dir1 StartMenuFolder
Dir2 DesktopFolder
Dir3 Dir3 앱 데이터
Dir4 Dir3 SubDir

 

Component 테이블(부분)

구성 요소 Directory_ 특성 KeyPath
Component1 Dir1 0 File1
Component2 Dir2 4
Component3 Dir3 4 Reg3
Component4 Dir4 4 Reg4
Component5 Dir5 4 Reg5

 

Registry 테이블(부분)

레지스트리 Root Component_
Reg3 2 Component3
Reg5 0 Component4

 

ICE 참조