Compartilhar via


ICE42

O ICE42 valida se os servidores InProc não estão vinculados a arquivos EXE na tabela Class. Ele também valida se somente as classes LocalServer e LocalServer32 têm argumentos e valores DefInProc.

Result

O ICE42 postará um erro se houver servidores InProc vinculados a arquivos EXE na tabela Class.

Exemplo

O ICE42 relatará os erros a seguir para o exemplo mostrado.

Erro do ICE42 Descrição
O CLSID '{GUID1}' é um servidor InProc, mas o componente de implementação 'Component1' tem um EXE ('test.exe') como o KeyFile. Há um arquivo executável especificado como um servidor InProc. Os arquivos EXE não podem ser servidores InProc.
O CLSID '{GUID1}' no contexto 'InProcServer32' tem um argumento. Somente os contextos do LocalServer podem ter argumentos. Para corrigir esse erro, remova o argumento.
O CLSID '{GUID1}' no contexto 'InProcServer32' especifica um valor de InProc padrão. Somente os contextos do LocalServer podem ter valores InProc padrão. Há um objeto com um valor InProc padrão que não é um objeto que opera nos contextos LocalServer ou LocalServer32. Para corrigir esse erro, remova o valor de DeflnProc ou altere o contexto da classe.

 

Tabela Class (parcial)

CLSID Contexto Component_ DefInProcHandler Argumento
{GUID1} InProcServer32 Component1 InProcServer Arg

 

Tabela Component (parcial)

Componente KeyPath
Component1 Arquivo1

 

Tabela File (parcial)

Arquivo Nome de arquivo
Arquivo1 test.exe

 

Referência do ICE