Freigeben über


TreatAs

Gibt die CLSID einer Klasse an, die die aktuelle Klasse emulieren kann.

Registrierungseintrag

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID
   {CLSID}
      TreatAs = {CLSID_TreatAs}

Bemerkungen

Dies ist ein REG_SZ Wert.

Emulation ist die Fähigkeit einer Anwendung, ein Objekt einer anderen Klasse zu öffnen und zu bearbeiten, während das ursprüngliche Format des Objekts beibehalten wird. Die Auflösung erfolgt auf dem lokalen Computer, sodass im Fall der Remoteaktivierung die Auflösung auf dem Clientcomputer mithilfe der von TreatAs angegebenen CLSID erfolgt.

DCOM prüft die lokale Registrierung für TreatAs, auch wenn Sie die CoCreateInstance-Funktion aufrufen und einen Remoteserver angeben. Wenn Sie also über einen TreatAs-Eintrag für Klasse1 verfügen, der auf Ihrem lokalen Computer als Klasse2 behandelt wird, Sie jedoch CoCreateInstance aufrufen, um eine instance klasse1 zu erstellen und einen Remoteserver anzugeben, versucht DCOM, auf dem Remoteserver eine instance klasse2 zu erstellen, auch wenn Class2 nicht auf dem Remoteserver registriert ist. Dies führt dazu, dass der Aufruf von CoCreateInstance fehlschlägt.

AutoTreatAs

CoGetTreatAsClass

CoTreatAsClass