샘플 패치 패키지를 재현하려면 Windows Installer 패치 패키지를 만들고 편집할 수 있는 소프트웨어 도구가 필요합니다. 여러 패치 패키지 생성 도구는 독립 소프트웨어 공급업체에서 사용할 수 있습니다. 다음 섹션에서 설명하는 예제에서는 Orca라는 Windows Installer 데이터베이스 편집기를 사용하여 패치 생성 속성 파일(.pcp 확장명)을 작성합니다. .pcp 파일은 유틸리티 Msimsp.exe 및 Patchwiz.dll 사용하여 Windows Installer 패치 패키지(.msp 확장명)를 생성할 수 있습니다. Orca, Msimsp.exe및 Patchwiz.dll은 Windows Installer 개발자를 위한 Windows SDK 구성 요소에서 제공됩니다.
빈 패치 생성 속성 파일인 template.pcp도 SDK와 함께 제공됩니다. template.pcp의 복사본을 만들고 이 복사본 MNP2000.pcp의 이름을 바꿉니다. Orca 또는 다른 데이터베이스 편집기를 사용하여 MNP2000.pcp의 속성 테이블에 다음 데이터를 입력합니다. 속성 테이블에는 패치 패키지에 대한 전역 설정이 포함되어 있습니다.
| 이름 | 값 |
|---|---|
| 제품 코드 불일치 허용 | 1 |
| 제품버전주요불일치허용 | 1 |
| ApiPatchingSymbolFlags | 0x00000000 |
| 작업 완료 후 임시 폴더 삭제 않기 | 1 |
| 전체 파일만 포함 | 0 |
| ListOfPatchGUIDsToReplace | |
| 대상 제품 코드 목록 | * |
| PatchGUID | {5406B219-A1AC-4BC4-8695-72292C8195AC} |
| 패치 출력 경로 | c:\output.msp |
| PatchSourceList | 패치소스목록 |
데이터베이스 편집기를 사용하여 MNP2000.pcp의 ImageFamilies 테이블에 다음 데이터를 입력합니다. ImageFamilies 테이블에는 패치 중에 Media 테이블에 추가할 정보가 포함되어 있습니다.
| 가족 | MediaSrcPropName | MediaDiskId | 파일 시퀀스 시작 | DiskPrompt | 볼륨 라벨 |
|---|---|---|---|---|---|
| MNPapps | MNPSrcPropName | 2 | 1000 |
MNP2000.pcp의 UpgradedImages 테이블에 다음 데이터를 입력합니다. UpgradedImages 테이블에는 작은 업데이트 패치계획에서 만든 업그레이드된 이미지에 대한 정보가 포함되어 있습니다.
| 업그레이드 | MsiPath | PatchMsiPath | 심볼 경로 | 가족 |
|---|---|---|---|---|
| MNP_고정 | C:\Note_Installer\Patch\Upgraded\MNP2000.msi | MNPapps |
MNP2000.pcp의 TargetImages 테이블에 다음 데이터를 입력합니다. TargetImages 테이블에는 대상 이미지에 대한 정보가 포함되어 있습니다.
| 타겟 | MsiPath | 심볼 경로 | 업그레이드 | 주문 | 프로덕트밸리데이트플래그 (ProductValidateFlags) | 누락된 소스 파일 무시 |
|---|---|---|---|---|---|---|
| MNP_error | C:\Note_Installer\Patch\Target\MNP2000.msi | MNP_fixed | 1 | 0 |
샘플 패치 패키지의 경우 다음 테이블을 MNP2000.pcp에 비워 둡니다.