Compartir a través de


Funciones globales de Registro y biblioteca de tipos

Estas funciones proporcionan compatibilidad para cargar y registrar una biblioteca de tipos.

Importante

Las funciones enumeradas en la siguiente tabla no se pueden usar en las aplicaciones que se ejecutan Windows Runtime.

Nombre Descripción
AfxRegCreateKey Crea la clave del Registro especificada.
AfxRegDeleteKey Elimina la clave del Registro especificada.
AfxRegisterPreviewHandler Asistente para registrar un controlador de vista previa.
AfxUnregisterPreviewHandler Asistente para anular el registro de un controlador de vista previa.
AtlRegisterTypeLib Esta función se invoca para registrar una biblioteca de tipos.
AtlUnRegisterTypeLib Esta función se invoca para anular el registro de una biblioteca de tipos
AfxRegOpenKey Abre la clave del Registro especificada.
AfxRegOpenKeyEx Abre la clave del Registro especificada.
AtlLoadTypeLib Esta función se invoca para cargar una biblioteca de tipos.
AtlUpdateRegistryFromResourceD Esta función se invoca para actualizar el Registro desde el recurso especificado.
RegistryDataExchange Esta función se invoca para leer el Registro del sistema o escribir en él. Invocado por las Macros de intercambio de datos de Registro.

Estas funciones controlan qué nodo del registro usa el programa para almacenar información.

Nombre Descripción
AtlGetPerUserRegistration Recupera si la aplicación redirige el acceso del registro al nodo HKEY_CURRENT_USER ( HKCU).
AtlSetPerUserRegistration Establece si la aplicación redirige el acceso del registro al nodo HKEY_CURRENT_USER ( HKCU).

Requisitos

Encabezado: atlbase.h

AtlGetPerUserRegistration

Use esta función para determinar si la aplicación redirige el acceso del registro al nodo HKEY_CURRENT_USER (HKCU).

Sintaxis

ATLINLINE ATLAPI AtlGetPerUserRegistration(bool* pEnabled);

Parámetros

pEnabled
[out] TRUE indica que la información del registro se dirige al nodo HKCU ; FALSE indica que la aplicación escribe la información del registro en el nodo predeterminado. El nodo predeterminado es HKEY_CLASSES_ROOT (HKCR).

Valor devuelto

Si el método se ejecuta correctamente, S_OK; si no, el código de error HRESULT si se produce un error.

Comentarios

El redireccionamiento del registro no está habilitado de manera predeterminada. Si habilita esta opción, el acceso al registro se redirige a HKEY_CURRENT_USER\Software\Classes.

El redireccionamiento no es global. Solo los marcos MFC y ATL se ven afectados por esta redirección del registro.

Requisitos

Encabezado: atlbase.h

AfxRegCreateKey

Crea la clave del Registro especificada.

Sintaxis

LONG AFXAPI AfxRegCreateKey(HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult, CAtlTransactionManager* pTM = NULL);

Parámetros

hKey
Identificador de una clave del Registro abierta.

lpSubKey
El nombre de una clave que esta función abre o crea.

phkResult
Puntero que apunta a una variable que recibe un identificador de la clave abierta o creada.

pTM
Un puntero a un objeto CAtlTransactionManager.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS. Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h.

Requisitos

Encabezado: afxpriv.h

AfxRegDeleteKey

Elimina la clave del Registro especificada.

Sintaxis

LONG AFXAPI AfxRegDeleteKey(HKEY hKey, LPCTSTR lpSubKey, CAtlTransactionManager* pTM = NULL);

Parámetros

hKey
Identificador de una clave del Registro abierta.

lpSubKey
El nombre de la clave que se va a eliminar.

pTM
Un puntero a un objeto CAtlTransactionManager.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS. Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h.

Requisitos

Encabezado: afxpriv.h

Asistente para registrar un controlador de vista previa.

Sintaxis

BOOL AFXAPI AfxRegisterPreviewHandler(LPCTSTR lpszCLSID, LPCTSTR lpszShortTypeName, LPCTSTR lpszFilterExt);

Parámetros

lpszCLSID
Especifica el CLSID del controlador.

lpszShortTypeName
Especifica el ProgID del controlador.

lpszFilterExt
Especifica la extensión del archivo registrado con este controlador.

Requisitos

Encabezado: afxdisp.h

AtlRegisterTypeLib

Esta función se invoca para registrar una biblioteca de tipos.

ATLAPI AtlRegisterTypeLib(HINSTANCE hInstTypeLib, LPCOLESTR lpszIndex);

Parámetros

hInstTypeLib
El identificador de la instancia de módulo.

lpszIndex
Cadena con el formato "\\N", donde N es el índice entero del recurso de la biblioteca de tipos. Puede ser NULL si no se requiere ningún índice.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

Comentarios

Esta función del asistente es usada por AtlComModuleUnregisterServer y CAtlComModule::RegisterTypeLib.

Requisitos

Encabezado: atlbase.h

AfxRegOpenKey

Abre la clave del Registro especificada.

Sintaxis

LONG AFXAPI AfxRegOpenKey(HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult, CAtlTransactionManager* pTM = NULL);

Parámetros

hKey
Identificador de una clave del Registro abierta.

lpSubKey
El nombre de una clave que esta función abre o crea.

phkResult
Puntero a una variable que recibe un identificador de la clave creada.

pTM
Un puntero a un objeto CAtlTransactionManager.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS. Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h.

Requisitos

Encabezado: afxpriv.h

AfxRegOpenKeyEx

Abre la clave del Registro especificada.

Sintaxis

LONG AFXAPI AfxRegOpenKeyEx(HKEY hKey, LPCTSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult, CAtlTransactionManager* pTM = NULL);

Parámetros

hKey
Identificador de una clave del Registro abierta.

lpSubKey
El nombre de una clave que esta función abre o crea.

ulOptions
Este parámetro está reservado y debe ser cero.

samDesired
Máscara que especifica los derechos de acceso deseados a la clave.

phkResult
Puntero a una variable que recibe un identificador de la clave abierta.

pTM
Un puntero a un objeto CAtlTransactionManager.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS. Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h.

Requisitos

Encabezado: afxpriv.h

AfxUnregisterPreviewHandler

Asistente para anular el registro de un controlador de vista previa.

Sintaxis

BOOL AFXAPI AfxUnRegisterPreviewHandler(LPCTSTR lpszCLSID);

Parámetros

lpszCLSID
Especifica el CLSID del controlador del que se va a anular el registro.

Requisitos

Encabezado: afxdisp.h

AtlSetPerUserRegistration

Establece si la aplicación redirige el acceso del registro al nodo HKEY_CURRENT_USER (HKCU).

Sintaxis

ATLINLINE ATLAPI AtlSetPerUserRegistration(bool bEnable);

Parámetros

bEnable
[in] TRUE indica que la información del registro se dirige al nodo HKCU ; FALSE indica que la aplicación escribe la información del registro en el nodo predeterminado. El nodo predeterminado es HKEY_CLASSES_ROOT (HKCR).

Valor devuelto

Si el método se ejecuta correctamente, S_OK; si no, el código de error HRESULT si se produce un error.

Comentarios

El redireccionamiento del registro no está habilitado de manera predeterminada. Si habilita esta opción, el acceso al registro se redirige a HKEY_CURRENT_USER\Software\Classes.

El redireccionamiento no es global. Solo los marcos MFC y ATL se ven afectados por esta redirección del registro.

Requisitos

Encabezado: atlbase.h

AtlUnRegisterTypeLib

Esta función se invoca para anular el registro de una biblioteca de tipos.

Sintaxis

ATLAPI AtlUnRegisterTypeLib(
    HINSTANCE hInstTypeLib,
    LPCOLESTR lpszIndex);

Parámetros

hInstTypeLib
El identificador de la instancia de módulo.

lpszIndex
Cadena con el formato "\\N", donde N es el índice entero del recurso de la biblioteca de tipos. Puede ser NULL si no se requiere ningún índice.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

Comentarios

Esta función del asistente es usada por CAtlComModule::UnRegisterTypeLib y AtlComModuleUnregisterServer.

Requisitos

Encabezado: atlbase.h

AtlLoadTypeLib

Esta función se invoca para cargar una biblioteca de tipos.

Sintaxis

ATLINLINE ATLAPI AtlLoadTypeLib(
    HINSTANCE hInstTypeLib,
    LPCOLESTR lpszIndex,
    BSTR* pbstrPath,
    ITypeLib** ppTypeLib);

Parámetros

hInstTypeLib
Identificador del módulo asociado a la biblioteca de tipos.

lpszIndex
Cadena con el formato "\\N", donde N es el índice entero del recurso de la biblioteca de tipos. Puede ser NULL si no se requiere ningún índice.

pbstrPath
Si la devolución es correcta, contendrá la ruta de acceso completa del módulo asociado a la biblioteca de tipos.

ppTypeLib
Si la devolución es correcta, contendrá un puntero a un puntero a la biblioteca de tipos cargada.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

Comentarios

Esta función del asistente es usada por AtlRegisterTypeLib y AtlUnRegisterTypeLib.

AtlUpdateRegistryFromResourceD

Esta función quedó en desuso en Visual Studio 2013 y se quitó en Visual Studio 2015.

<removed>

RegistryDataExchange

Esta función se invoca para leer el Registro del sistema o escribir en él.

Sintaxis

HRESULT RegistryDataExchange(
    T* pT,
    enum RDXOperations rdxOp,
    void* pItem = NULL);

Parámetros

pT
Puntero al objeto actual.

rdxOp
Un valor de enumeración que indica qué operación debe realizar la función. Consulte la tabla en la sección Comentarios para conocer los valores permitidos.

pItem
Puntero a los datos que se van a leer desde, o escribir en, el registro. Los datos también pueden representar una clave que se va a eliminar del registro. El valor predeterminado es NULL.

Valor devuelto

Devuelve S_OK si es correcto o un error HRESULT en caso de error.

Comentarios

Las macros BEGIN_RDX_MAP y END_RDX_MAP expanden una función que llama a RegistryDataExchange.

Los valores posibles de enumeración que indican la operación que debe realizar la función se muestran en la siguiente tabla:

Valor de enumeración Operación
eReadFromReg Leer datos del registro.
eWriteToReg Escribir datos en el registro.
eDeleteFromReg Eliminar la clave del Registro.

Requisitos

Encabezado: atlbase.h

Consulte también

Funciones
Macros de intercambio de datos de Registro