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


TreatAs

Указывает CLSID класса, который может эмулировать текущий класс.

Запись реестра

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

Замечания

Это REG_SZ значение.

Эмуляция — это возможность одного приложения открывать и изменять объект другого класса, сохраняя исходный формат объекта. Разрешение происходит на локальном компьютере, поэтому в случае удаленной активации разрешение происходит на клиентском компьютере с помощью CLSID, указанного TreatAs.

DCOM рассматривает локальный реестр для TreatAs, даже если вызвать функцию CoCreateInstance и указать удаленный сервер. Это означает, что если на локальном компьютере имеется запись TreatAs для класса 1, но вы вызываете CoCreateInstance для создания экземпляра Класса1 и укажите удаленный сервер, DCOM попытается создать экземпляр Class2 на удаленном сервере, даже если класс 2 не зарегистрирован на удаленном сервере, что приведет к сбою вызова CoCreateInstance.

AutoTreatAs

CoGetTreatAsClass

CoTreatAsClass