Sdílet prostřednictvím


ICE62

ICE62 provádí rozsáhlé kontroly tabulky IsolatedComponent dat, která mohou způsobit neočekávané chování.

Pokud se nepodaří opravit chybu hlášenou protokolem ICE62, může dojít k selhání izolovaného systému komponent mnoha způsoby. Pokud například bit SharedDllRefCount není nastaven pro sdílenou komponentu, může být registrace součásti odebrána, když tato komponenta používá jinou aplikaci a je odinstalována.

Výsledek

ICE62 publikuje upozornění nebo chybu, když najde data v tabulce IsolatedComponent, která může způsobit neočekávané chování.

Příklad

ICE62 hlásí následující chyby a upozornění pro uvedené příklady.

The component 'Component2' is listed as an isolated application 
component in the IsolatedComponent table, but the key path is not a file.

Součást2 je uvedena jako součást aplikace pro izolaci komponenty1. Komponenta2 má však cestu ke klíči registru a neposkytuje platnou spustitelné cestu, která se má použít k izolaci komponenty.

Chcete-li tuto chybu opravit, použijte jinou komponentu jako aplikaci pro izolovanou komponentu Component1.

The component 'Component1' is listed as an isolated shared component in the 
IsolatedComponent table, but is not marked with the SharedDllRefCount component attribute.

Komponenta1 je uvedena jako izolovaná sdílená komponenta, ale nemá nastavenou bitovou sadu SharedDllRefCount. Výsledkem může být nesprávná životnost komponenty. Pokud jiná aplikace používá tuto komponentu (izolovanou nebo ne) a odinstaluje se, registrace komponenty se odebere, ale izolovaná kopie této aplikace zůstane. To způsobuje problémy s opravou a odinstalací.

Chcete-li tuto chybu opravit, nastavte bit SharedDllRefCount pro komponentu.

The isolated shared component 'Component1' is not installed by the same feature as 
(or a parent feature of) its isolated application component 'Component2' (which is installed by feature 'Feature2').

Komponenty1 a Component2 jsou nainstalovány různými funkcemi. Součást1 je nainstalována funkcí1 a součást2 je nainstalována funkcí2. Funkce1 není nadřazenou součástí funkce Feature2, proto je možné nainstalovat aplikaci, ale ne izolovanou komponentu, čímž se izolace přeruší.

Chcete-li tuto chybu opravit, přidejte položku do tabulky FeatureComponents odkazující komponentu1 na stejnou funkci jako (nebo nadřazenou funkci) funkce, která nainstaluje součást2.

WARNING: The isolated shared component 'Component1' (referenced in the IsolatedComponent table) 
is conditionalized. Isolated shared component conditions should never change from TRUE to FALSE after the first install of the product.

Komponenta1 má v tabulce Komponenta podmínku. Pokud se tato podmínka během životnosti instalace na počítači změní z TRUE na FALSE, může být izolovaná komponenta bez registračních informací osamocená.

Chcete-li toto upozornění opravit, odeberte podmínku nebo ji vytvořte tak, aby se nikdy nezměnila z hodnoty PRAVDA na NEPRAVDA.

WARNING: The isolated shared component 'Component1' is shared by multiple applications 
(including 'Component2') that are installed to the directory 'TARGETDIR'.
WARNING: The isolated shared component 'Component1' is shared by multiple applications 
(including 'Component3') that are installed to the directory 'TARGETDIR'.

Komponenta1 je izolovaná pro komponentu 2 i komponentu3 a obě komponenty jsou také nainstalovány do stejného adresáře. Aplikace sdílejí izolovanou komponentu, ale pokud je jedna aplikace odebraná, odebere se sdílená komponenta a způsobí, že ostatní aplikace ztratí izolovanou komponentu.

Pokud chcete toto upozornění opravit, nainstalujte aplikace do různých adresářů nebo zkontrolujte, jestli některé aplikace skutečně vyžadují izolovanou komponentu.

izolované tabulky

Component_Shared Component_Application
Component1 Component2
Component1 Component3

 

tabulky komponent

Komponenta ComponentId Adresář_ Atributy Podmínka KeyPath
Component1 Dir1 0 MYCONDITION Soubor 1
Component2 TARGETDIR 4 Registr2
Component3 TARGETDIR 0 Soubor 3

 

FeatureComponentsTable

Rys_ Komponenta_
Funkce 1 Component1
Funkce 2 Component2
Funkce 1 Component3

 

tabulky funkcí (částečné)

Rys Feature_Parent
Funkce 1
Funkce 2

 

referenční ICE