DllSurrogate
Permet aux serveurs DLL de s’exécuter dans un processus de substitution. Si une chaîne vide est spécifiée, le substitut fourni par le système est utilisé ; sinon, la valeur spécifie le chemin du substitut à utiliser.
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID
{AppID_GUID}
DllSurrogate = path
Il s’agit d’une valeur REG_SZ qui spécifie que la classe est une DLL qui doit être activée dans un processus de substitution et le processus de substitution à utiliser. Pour utiliser le processus de substitution générique fourni par le système, définissez le chemin d’accès sur une chaîne vide ou NULL. Pour spécifier un autre processus de substitution, définissez le chemin d’accès du substitut. Comme dans la spécification du chemin d’accès d’un serveur sous la clé LocalServer32 , une spécification de chemin d’accès complète n’est pas nécessaire. Le substitut doit être écrit pour communiquer correctement avec le service DCOM, comme décrit dans Écriture d’un substitut personnalisé.
La valeur DllSurrogate doit être présente pour qu’un serveur DLL soit activé dans un substitut. L’activation fait référence à un appel à CoGetClassObject, CoCreateInstanceEx, CoCreateInstanceEx, CoGetInstanceFromFile, CoGetInstanceFromIStorage ou IMoniker::BindToObject. L’exécution de DLL dans un processus de substitution offre les avantages d’une implémentation exécutable, notamment l’isolation des erreurs, la possibilité de servir plusieurs clients simultanément et de permettre au serveur de fournir des services aux clients distants dans un environnement distribué.