Uso compartido suplente
Los servidores DLL compartirán un suplente si tienen identidades de seguridad coincidentes y comparten el mismo valor de AppID.
Los servidores DLL se cargan, de forma predeterminada, en su propio proceso suplente. Para cargar otros servidores DLL en un suplente existente para que admita más de un servidor DLL, hay dos requisitos:
- Los servidores DLL deben tener el mismo valor de AppID.
- El contexto de seguridad de los servidores DLL debe ser el mismo.
Si se van a iniciar dos servidores DLL en identidades de seguridad diferentes, deben estar en suplentes diferentes, si sus Identificadores de aplicación coinciden.
A continuación se muestra un ejemplo de administración del uso compartido suplente con AppID:
AppID
{00001111-aaaa-2222-bbbb-3333cccc4444}
@DllSurrogate REG_SZ
CLSID
{12345678-0000-0000-0000-000000000001}
@AppId REG_SZ {00001111-aaaa-2222-bbbb-3333cccc4444}
InProcServer32
@ REG_SZ c:\myapp\comp1.dll
{12345678-0000-0000-0000-000000000002}
@AppId REG_SZ {00001111-aaaa-2222-bbbb-3333cccc4444}
InProcServer32
@ REG_SZ c:\myapp\comp2.dll
Los dos CLSID para componentes DLL comp1.dll y comp2.dll se han configurado para compartir un AppID. La clave AppID especifica que el servidor DLL se puede cargar en un suplente especificando el valor DllSurrogate . En este ejemplo, el valor dllSurrogate es una cadena vacía, lo que indica que se debe usar la implementación predeterminada del sistema del suplente DLL.
Temas relacionados