ICE42

ICE42 vérifie que les serveurs InProc ne sont pas liés aux fichiers EXE dans la table Class. Il valide également que seules les classes LocalServer et LocalServer32 ont des arguments et des valeurs DefInProc.

Résultats

ICE42 publie une erreur s’il existe des serveurs InProc liés à des fichiers EXE dans la table Class.

Exemple

ICE42 signale les erreurs suivantes pour l’exemple présenté.

Erreur ICE42 Description
CLSID « {GUID1} » est un serveur InProc, mais le composant d’implémentation « Component1 » a un EXE (« test.exe ») comme fichier clé. Un fichier exécutable est spécifié en tant que serveur InProc. Les fichiers EXE ne peuvent pas être des serveurs InProc.
CLSID « {GUID1} » dans le contexte « InProcServer32 » a un argument. Seuls les contextes LocalServer peuvent avoir des arguments. Pour corriger cette erreur, supprimez l’argument.
CLSID « {GUID1} » dans le contexte « InProcServer32 » spécifie une valeur InProc par défaut. Seuls les contextes LocalServer peuvent avoir des valeurs InProc par défaut. Il existe un objet avec une valeur InProc par défaut qui n’est pas un objet fonctionnant dans les contextes LocalServer ou LocalServer32. Pour corriger cette erreur, supprimez la valeur DeflnProc ou modifiez le contexte de la classe.

 

Table Class (partielle)

CLSID Context Composant_ DefInProcHandler Argument
{GUID1} InProcServer32 Component1 InProcServer Arg

 

Table Composant (partielle)

Composant KeyPath
Component1 Fichier1

 

Table Fichiers (partielle)

Fichier Nom de fichier
Fichier1 test.exe

 

Référence ICE