Freigeben über


DllSurrogate

Ermöglicht die Ausführung von DLL-Servern in einem Ersatzprozess. Wenn eine leere Zeichenfolge angegeben wird, wird das vom System bereitgestellte Ersatz verwendet; andernfalls gibt der Wert den Pfad des zu verwendenden Ersatzs an.

Registrierungseintrag

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

Bemerkungen

Dies ist ein REG_SZ Wert, der angibt, dass die Klasse eine DLL ist, die in einem Ersatzprozess aktiviert werden soll, und den zu verwendenden Ersatzprozess. Um den vom System bereitgestellten generischen Ersatzprozess zu verwenden, legen Sie Pfad auf eine leere Zeichenfolge oder NULL-fest. Um einen anderen Ersatzprozess anzugeben, legen Sie Pfad auf den Pfad des Ersatzs fest. Wie bei der Spezifikation des Pfads eines Servers unter dem LocalServer32 Schlüssel ist keine vollständige Pfadspezifikation erforderlich. Der Ersatz muss geschrieben werden, um ordnungsgemäß mit dem DCOM-Dienst zu kommunizieren, wie in Writing a Custom Surrogatebeschrieben.

Der DllSurrogate Wert muss vorhanden sein, damit ein DLL-Server in einem Ersatz aktiviert werden kann. Aktivierung bezieht sich auf einen Aufruf von CoGetClassObject, CoCreateInstanceEx, CoCreateInstanceEx, CoGetInstanceFromFile, CoGetInstanceFromIStorageoder IMoniker::BindToObject. Das Ausführen von DLLs in einem Ersatzprozess bietet die Vorteile einer ausführbaren Implementierung, einschließlich der Fehlerisolation, der Möglichkeit, mehrere Clients gleichzeitig zu bedienen und dem Server die Bereitstellung von Diensten für Remoteclients in einer verteilten Umgebung zu ermöglichen.

CoRegisterSurrogate-

DLL-Surrogates

DllSurrogateExecutable

ISurrogate-