Функция CoGetTreatAsClass (combaseapi.h)
Возвращает ИДЕНТИФИКАТОР CLSID объекта, который может эмулировать указанный объект.
Синтаксис
HRESULT CoGetTreatAsClass(
[in] REFCLSID clsidOld,
[out] LPCLSID pClsidNew
);
Параметры
[in] clsidOld
ИДЕНТИФИКАТОР CLSID объекта, который можно эмулировать (обрабатывать как) объект с другим ИДЕНТИФИКАТОРом CLSID.
[out] pClsidNew
Указатель на то, где извлекается идентификатор CLSID, который может эмулировать объекты clsidOld . Этот параметр не может иметь значение NULL. Если сведения об эмуляции для объектов clsidOld отсутствуют, предоставляется параметр clsidOld .
Возвращаемое значение
Эта функция может возвращать следующие значения, а также любые значения ошибок, возвращаемые функцией CLSIDFromString .
Код возврата | Описание |
---|---|
|
Новый идентификатор CLSID успешно возвращен. |
|
Сведения об эмуляции для параметра clsidOld отсутствуют, поэтому для параметра pClsidNew задано значение clsidOld. |
|
Произошла ошибка при чтении реестра. |
Комментарии
CoGetTreatAsClass возвращает запись TreatAs в реестре для указанного объекта. Запись TreatAs , если она задана, является CLSID зарегистрированного объекта (приложения), который может эмулировать рассматриваемый объект. Запись TreatAs задается с помощью вызова функции CoTreatAsClass . Эмуляция позволяет приложению открывать и редактировать объект другого формата, сохраняя при этом исходный формат объекта. Объекты исходного идентификатора CLSID активируются и обрабатываются как объекты второго идентификатора CLSID. При сохранении объекта это может привести к потере изменений, не поддерживаемых исходным форматом. Если для указанного объекта отсутствует запись TreatAs , эта функция возвращает ИДЕНТИФИКАТОР CLSID исходного объекта (clsidOld).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | combaseapi.h (включая Objbase.h) |
Библиотека | Ole32.lib |
DLL | Ole32.dll |