Поделиться через


DllSurrogate

Позволяет серверам DLL выполняться в суррогатном процессе. Если указана пустая строка, используется суррогат, предоставленный системой; в противном случае значение указывает путь суррогата, который будет использоваться.

Параметр реестра

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID
   {AppID_GUID}
      DllSurrogate = path

Замечания

Это REG_SZ значение, указывающее, что класс является библиотекой DLL, которая должна быть активирована в суррогатном процессе, и суррогатный процесс, используемый. Чтобы использовать универсальный суррогатный процесс, предоставленный системой, задайте путь к пустой строке или NULL. Чтобы указать другой суррогатный процесс, задайте путь к пути суррогата. Как и в спецификации пути сервера под ключом LocalServer32 , спецификация полного пути не требуется. Суррогат должен быть записан для правильного взаимодействия со службой DCOM, как описано в статье "Написание пользовательского суррогата".

Значение DllSurrogate должно присутствовать для активации сервера DLL в суррогате. Активация относится к вызову CoGetClassObject, CoCreateInstanceEx, CoCreateInstanceEx, CoGetInstanceFromFile, CoGetInstanceFromI служба хранилища или IMoniker::BindToObject. Выполнение библиотек DLL в суррогатном процессе обеспечивает преимущества реализации исполняемого файла, включая изоляцию сбоя, возможность одновременно обслуживать несколько клиентов и предоставлять службы удаленным клиентам в распределенной среде.

CoRegisterSurrogate

Суррогаты DLL

DllSurrogateExecutable

ISurrogate