Dela via


ICE35

ICE35 verifierar att komponenter som innehåller komprimerade filer som lagras i en kabinettfil inte är inställda på att köras från källan. Med Windows Installer 2.0 eller senare har den här begränsningen tagits bort.

ICE35 frågar kolumnen Kabinett i tabellen Media för att avgöra vilka filer som komprimeras och lagras i en kabinettfil. Den frågar filtabellen för att avgöra vilka komponenter som innehåller dessa filer. Slutligen kontrollerar den tabellen Komponent för att avgöra om run-from-source-bitarna har angetts i kolumnen Attribut.

Resultat

ICE35 skickar ett felmeddelande om det finns en komprimerad fil som lagras i en kabinettfil som tillhör en komponent med bituppsättningen msidbComponentAttributesSourceOnly i kolumnen Attribut i tabellen Component. Med Windows Installer 2.0 eller senare ändras detta från ett fel till ett varningsmeddelande. Ett paket som endast stöder Windows Installer 2.0 och senare har egenskapen PID_PAGECOUNT för Summary Information Stream inställt på ett värde på minst 200.

ICE35 publicerar varningsmeddelande om det finns en komprimerad fil som lagras i en kabinettfil som tillhör en komponent med biten msidbComponentAttributesOptional i kolumnen Attribut i tabellen Component. Det här varningsmeddelandet har tagits bort med Windows Installer 2.0 och senare.

Om flera filer i en komponent finns i en kabinettfil rapporterar ICE35 fel för varje fil som har körningen från källbituppsättningen.

Exempel

ICE35 rapporterar följande fel och varningar för exemplet som visas med en tidigare version än Windows Installer version 2.0.

ICE35-fel Beskrivning
FEL: Komponentkomponent 3 kan inte endast köras från källan eftersom dess medlemsfil File3 är komprimerad. Det finns en komprimerad fil som lagras i en kabinettfil och den här filen tillhör en komponent med SourceOnly-bitarsuppsättningen i kolumnen Attribut i tabellen Komponent. Om du vill åtgärda det här felet ändrar du de lägre 2 bitarna av Component2s attributvärde till "00", vilket endast betyder Lokal, eller tar bort File4 från CAB-filen.
FEL: Komponentkomponent 3 kan inte endast köras från källan eftersom dess medlemsfil File3 är komprimerad. Det finns en komprimerad fil som lagras i en kabinettfil och den här filen tillhör en komponent med SourceOnly-bitarsuppsättningen i kolumnen Attribut i tabellen Komponent. Eftersom filerna i en komponent inte alla måste komma från samma media rapporterar ICE35 fel för varje fil i komponenten som finns i ett skåp.
Om du vill åtgärda det här felet ändrar du de lägre 2 bitarna av Component2s attributvärde till "00", vilket endast betyder Lokal, eller tar bort File4 från CAB-filen.

 

Media Table (partiell)

DiskID LastSequence Kabinett
1 2  
2 4 One.cab
3 5 #Two.cab

 

filtabell (delvis)

Fil Komponent_ Sekvens
Fil1 Komponent1 1
Fil 2 Komponent 2 2
Fil 3 Komponent 2 3
Fil 4 Komponent 3 4
Fil5 Komponent 3 5

 

komponenttabell (delvis)

Komponent Attribut
Komponent1 0
Komponent 2 2
Komponent 3 1

 

genvägstabell (partiell)

Genväg Ikon_
Genväg 1 Ikon 2

 

Observera att filer också kan markeras som komprimerade med hjälp av egenskapen Sammanfattning för sammanfattningsinformation.

ICE-referens