ICE42

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

Résultats

ICE42 publie une erreur si des serveurs InProc sont liés à des fichiers EXE dans la table de classe.

Exemple

ICE42 signale les erreurs suivantes pour l’exemple indiqué.

Erreur ICE42 Description
Le CLSID « {GUID1} » est un serveur INPROC, mais le composant d’implémentation « Composant1 » a un EXE (« test.exe ») comme keyfile. Un fichier exécutable est spécifié en tant que serveur INPROC. Les fichiers EXE ne peuvent pas être des serveurs InProc.
Le CLSID « {GUID1} » dans le contexte « InProcServer32 » a un argument. Seuls les contextes LocalServer peuvent avoir des arguments. Pour corriger cette erreur, supprimez l’argument.
Le 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 opérant dans les contextes LocalServer ou LocalServer32. Pour corriger cette erreur, supprimez la valeur DeflnProc ou modifiez le contexte de la classe.

Table de classe (partielle)

CLSID Context Composant_ DefInProcHandler Argument
GUID1 InProcServer32 Composant1 InProcServer Donnée

Table des composants (partielle)

Composant KeyPath
Composant1 Fichier1

Table de fichiers (partielle)

Fichier Nom de fichier
Fichier1 test.exe

Référence ICE