Función OleRegGetUserType (ole2.h)

Obtiene el tipo de usuario de la clase especificada del Registro.

Los desarrolladores de aplicaciones de objetos DLL personalizadas usan esta función para emular el comportamiento del controlador predeterminado OLE.

Sintaxis

HRESULT OleRegGetUserType(
  [in]  REFCLSID clsid,
  [in]  DWORD    dwFormOfType,
  [out] LPOLESTR *pszUserType
);

Parámetros

[in] clsid

CLSID de la clase para la que se va a solicitar el tipo de usuario.

[in] dwFormOfType

Forma de la cadena que se puede presentar por el usuario. Los valores posibles se toman de la enumeración USERCLASSTYPE.

[out] pszUserType

Puntero a una cadena que recibe el tipo de usuario.

Valor devuelto

Esta función puede devolver el valor devuelto estándar E_OUTOFMEMORY, así como los siguientes valores.

Código devuelto Descripción
S_OK
El tipo de usuario se devolvió correctamente.
REGDB_E_CLASSNOTREG
No se registra CLSID para el objeto de clase.
REGDB_E_READREGDB
Error al leer el registro.
OLE_E_REGDB_KEY
Faltan las claves ProgID = MainUserTypeName y CLSID = MainUserTypeName del Registro.

Comentarios

Las aplicaciones de objeto pueden pedir a OLE que obtenga el nombre de tipo de usuario de una clase especificada de dos maneras. Una manera es llamar a OleRegGetUserType. El otro consiste en devolver OLE_S_USEREG en respuesta a las llamadas del controlador de objetos predeterminado a IOleObject::GetUserType. OLE_S_USEREG indica al controlador predeterminado que llame a OleRegGetUserType. Dado que las aplicaciones de objetos DLL no pueden devolver OLE_S_USEREG, deben llamar a OleRegGetUserType, en lugar de delegar el trabajo en el controlador de objetos.

La función OleRegGetUserType y sus funciones del mismo nivel, OleRegGetMiscStatus, OleRegEnumFormatEtc y OleRegEnumVerbs, proporcionan una manera para que los desarrolladores de aplicaciones de objetos DLL personalizadas emulen el comportamiento del controlador de objetos predeterminado de OLE para obtener información sobre los objetos del Registro. Mediante el uso de estas funciones, se evita el trabajo considerable de escritura propia y los problemas inherentes a trabajar directamente en el registro. Además, obtendrá mejoras y optimizaciones futuras de estas funciones sin tener que codificarlas usted mismo.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ole2.h
Library Ole32.lib
Archivo DLL Ole32.dll
Conjunto de API ext-ms-win-com-ole32-l1-1-3 (introducido en Windows 10, versión 10.0.10240)

Consulte también

IOleObject::GetUserType

OleRegEnumFormatEtc

OleRegEnumVerbs

OleRegGetMiscStatus