다음을 통해 공유


서명 테이블

서명 테이블에는 파일 서명을 고유하게 식별하는 정보가 있습니다. 디지털 서명 사용에 대한 자세한 내용은 디지털 서명 및 Windows Installer를 참조하세요.

서명 테이블에는 다음과 같은 열이 있습니다.

Column 형식 Nullable
서명 식별자 Y N
FileName Text N N
MinVersion Text N Y
MaxVersion Text N Y
MinSize DoubleInteger N Y
MaxSize DoubleInteger N Y
MinDate DoubleInteger N Y
MaxDate DoubleInteger N Y
언어 Text N Y

 

Signature

서명 열은 고유한 파일 서명입니다.

FileName

파일 이름입니다.

MinVersion

언어 비교를 사용하는 파일의 최소 버전입니다. 이 필드를 지정하면 파일에 MinVersion과 같은 버전이 있어야 합니다. 파일의 버전이 MinVersion 필드 값과 같지만 언어 열에 지정된 언어가 다른 경우 파일은 서명 필터 조건을 충족하지 않습니다.

참고

언어 열에 지정된 언어는 비교에 사용되며 언어를 무시할 방법은 없습니다. 언어에 관계없이 파일이 MinVersion 필드 요구 사항을 충족하도록 하려면 MinVersion 필드에 실제 값보다 작은 값을 입력해야 합니다. 예를 들어 필터의 최소 버전이 2.0.2600.1183인 경우 2.0.2600.1182를 사용하여 언어 정보와 일치시키지 않고 파일을 찾습니다.

 

MaxVersion

파일의 최대 버전입니다. 이 필드를 지정하면 파일에 MaxVersion과 적어도 동일한 버전이 있어야 합니다.

MinSize

파일의 최대 크기입니다. 이 필드를 지정하면 검사 중인 파일의 크기가 최소 크기 이상이어야 합니다. 음수가 아닌 숫자여야 합니다.

MaxSize

파일의 최대 크기입니다. 이 필드를 지정하면 검사 중인 파일의 크기가 MaxSize와 적어도 같아야 합니다. 음수가 아닌 숫자여야 합니다.

MinDate

파일의 최소 수정 날짜 및 시간. 이 필드를 지정하면 검사 중인 파일에 적어도 MinDate와 같은 수정 날짜와 시간이 있어야 합니다. 음수가 아닌 숫자여야 합니다. 이 필드의 형식은 WORD 형식의 두 개의 압축된 16비트 값입니다. 높은 순서의 WORD 값은 날짜를 MS-DOS 날짜 형식으로 지정합니다. 낮은 순서의 WORD 값은 시간을 MS-DOS 시간 형식으로 지정합니다. 시간 값의 값 0은 자정을 나타냅니다. 주의 섹션을 참조하십시오.

MaxDate

파일의 최대 생성 날짜입니다. 이 필드를 지정하면 검사 중인 파일의 생성 날짜가 MaxDate와 적어도 같아야 합니다. 음수가 아닌 숫자여야 합니다. 이 필드의 형식은 WORD 형식의 두 개의 압축된 16비트 값입니다. 높은 순서의 WORD 값은 날짜를 MS-DOS 날짜 형식으로 지정합니다. 낮은 순서의 WORD 값은 시간을 MS-DOS 시간 형식으로 지정합니다. 시간 값의 값 0은 자정을 나타냅니다. 주의 섹션을 참조하십시오.

Languages

파일에서 지원하는 언어입니다.

설명

이 테이블은 AppSearch 테이블과 함께 사용됩니다.

서명은 RegLocator 테이블, IniLocator 테이블, CompLocator 테이블DrLocator 테이블을 사용하여 검색됩니다. 이 테이블의 열은 일반적으로 지역화되지 않습니다. 작성자가 여러 언어로 제품을 검색하기로 결정한 경우 각 언어에 대한 테이블에 별도의 항목이 포함될 수 있습니다.

서명 테이블은 일반적으로 Windows Installer 파일 버전 관리 규칙을 따릅니다. 서명 테이블의 언어 열에 지정된 언어는 파일 버전이 동일하지 않으면 평가되지 않습니다. 언어 열은 요청된 버전인 경우 파일이 특정 언어인지 확인합니다. 언어 열을 무시하는 데 사용할 수 있는 메서드는 없습니다. 언어 열에 입력된 NULL 값은 언어가 없는 파일로 처리되며 파일의 파일 서명을 서명 테이블에 표시되는 언어와 일치시키지 않습니다. 다음 예제에서는 특정 버전의 MSI.DLL을 검색합니다.

DrLocator 테이블

Signature_ Parent 경로 깊이
MsiDll {null} c:\windows\system32 0

 

AppSearch 테이블

속성 Signature_
MSIDLL MsiDll

 

서명 테이블

서명 FileName MinVersion MaxVersion MinSize MaxSize MinDate MaxDate 언어
MsiDll msi.dll 2.0.2600.1106 {null} {null} {null} {null} {null} 0

 

이 경우 및 Windows XP SP1에서 AppSearch 작업은 MSI.DLL이 언어 중립 파일이므로 MSIDLL을 c:\windows\system32\msi.dll로 설정합니다. 언어 열의 값이 0에서 1033으로 변경되면 AppSearch 작업이 일치하는 msi.dll을 찾지 못하고 MSIDLL 속성이 정의되지 않습니다.

서명 테이블을 사용하여 언어만 쿼리할 수 없습니다. 파일의 다른 언어 버전을 검색하려면 각 언어 버전에 대한 서명 테이블에 별도의 항목이 있어야 합니다. 언어 열에 여러 언어가 제공되면 해당 언어를 모두 지원하는 파일을 검색합니다.

MinDate 및 MaxDate 열의 형식은 WORD 형식의 두 개의 압축된 16비트 값입니다.

날짜 WORD

비트 콘텐츠
0–4 달 중의 날짜(1~31)
5-8 월(1 = 1월, 2 = 2월 등)
9-15 1980년부터의 연도 오프셋(실제 연도를 얻기 위해 1980년 추가)

 

시간 WORD

비트 콘텐츠
0–4 초를 2로 나눈 값
5-10 분(0-59)
11-15 시간(24시간의 0-23시)

 

MinDate 및 MaxDate 필드 값을 계산하는 수식은 다음과 같습니다.

((년 - 1980) * 512 + 월 * 32 + 일 ) * 65536 + 시간 * 2048 + 분 * 32 + 초 / 2

유효성 검사

ICE03
ICE06