DllSurrogate
Permite que os servidores DLL sejam executados em um processo substituto. Se uma cadeia de caracteres vazia for especificada, o substituto fornecido pelo sistema será usado; caso contrário, o valor especifica o caminho do substituto a ser usado.
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID
{AppID_GUID}
DllSurrogate = path
Esse é um valor de REG_SZ que especifica que a classe é uma DLL que deve ser ativada em um processo substituto e o processo substituto a ser usado. Para usar o processo substituto genérico fornecido pelo sistema, defina o caminho para uma cadeia de caracteres vazia ou NULL. Para especificar outro processo substituto, defina o caminho para o caminho do substituto. Como na especificação do caminho de um servidor sob a chave LocalServer32 , uma especificação de caminho completo não é necessária. O substituto deve ser escrito para se comunicar corretamente com o serviço DCOM, conforme descrito em Escrevendo um substituto personalizado.
O valor DllSurrogate deve estar presente para que um servidor DLL seja ativado em um substituto. A ativação refere-se a uma chamada para CoGetClassObject, CoCreateInstanceEx, CoCreateInstanceEx, CoGetInstanceFromFile, CoGetInstanceFromIStorage ou IMoniker::BindToObject. A execução de DLLs em um processo substituto fornece os benefícios de uma implementação executável, incluindo isolamento de falhas, a capacidade de atender vários clientes simultaneamente e permitir que o servidor forneça serviços a clientes remotos em um ambiente distribuído.