Udostępnij za pośrednictwem


ICE42

ICE42 sprawdza, czy serwery InProc nie są połączone z plikami EXE w tabeli klas . Sprawdza również, czy tylko klasy LocalServer i LocalServer32 mają argumenty i wartości DefInProc.

Wynik

ICE42 publikuje błąd, jeśli w tabeli Klasy znajdują się serwery InProc połączone z plikami EXE.

Przykład

ICE42 zgłosi następujące błędy dla pokazanego przykładu.

Błąd ICE42 Opis
CLSID "{GUID1}" jest serwerem InProc, ale składnik implementujący "Component1" ma plik EXE ("test.exe") jako plik KeyFile. Plik wykonywalny jest określony jako serwer InProc. Pliki EXE nie mogą być serwerami InProc.
Identyfikator CLSID "{GUID1}" w kontekście "InProcServer32" ma argument. Tylko konteksty LocalServer mogą mieć argumenty. Aby naprawić ten błąd, usuń argument.
CLSID "{GUID1}" w kontekście "InProcServer32" określa domyślną wartość InProc. Tylko konteksty LocalServer mogą mieć domyślne wartości InProc. Istnieje obiekt z domyślną wartością InProc, która nie jest obiektem działającym w kontekstach LocalServer lub LocalServer32. Aby naprawić ten błąd, usuń wartość DeflnProc lub zmień kontekst klasy.

 

Tabela klas (częściowa)

CLSID Kontekst Składnik_ DefInProcHandler Argument
{GUID1} InProcServer32 Składnik1 InProcServer Arg

 

tabela składników (częściowa)

Składnik KeyPath
Składnik1 Plik1

 

tabeli plików (częściowe)

Plik Pod nazwą
Plik1 test.exe

 

dokumentacji ICE