Compartilhar via


Funções globais TypeLib e Registro

Essas funções fornecem suporte para carregar e registrar uma biblioteca de tipos.

Importante

As funções listadas nas tabelas a seguir não podem ser usadas em aplicativos que são executados no Windows Runtime.

Nome Descrição
AfxRegCreateKey Cria a chave do Registro especificada.
AfxRegDeleteKey Exclui a chave do Registro especificada.
AfxRegisterPreviewHandler Um auxiliar para registrar um manipulador de visualização.
AfxUnregisterPreviewHandler Um auxiliar para cancelar o registro de um manipulador de visualização.
AtlRegisterTypeLib Essa função é chamada para registrar uma biblioteca de tipos.
AtlUnRegisterTypeLib Essa função é chamada para cancelar o registro de uma biblioteca de tipos
AfxRegOpenKey Abre a chave do Registro especificada.
AfxRegOpenKeyEx Abre a chave do Registro especificada.
AtlLoadTypeLib Essa função é chamada para carregar uma biblioteca de tipos.
AtlUpdateRegistryFromResourceD Essa função é chamada para atualizar o Registro de recurso fornecido.
Troca de Dados do Registro Essa função é chamada para ler do ou gravar no Registro do sistema. Chamado pelas Macros de troca de dados de Registro.

Essas funções controlam qual nó no registro o programa usa para armazenar informações.

Nome Descrição
AtlGetPerUserRegistration Recupera se o aplicativo redireciona o acesso do registro ao nó HKEY_CURRENT_USER (HKCU).
AtlSetPerUserRegistration Define se o aplicativo redireciona o acesso do registro ao nó HKEY_CURRENT_USER (HKCU).

Requisitos

Cabeçalho: atlbase.h

AtlGetPerUserRegistration

Use essa função para determinar se o aplicativo redireciona o acesso do registro ao nó HKEY_CURRENT_USER (HKCU).

Sintaxe

ATLINLINE ATLAPI AtlGetPerUserRegistration(bool* pEnabled);

Parâmetros

pEnabled
[out] TRUE indica que as informações do registro são direcionadas para o nó HKCU; FALSE indica que o aplicativo grava informações do registro no nó padrão. O nó padrão é HKEY_CLASSES_ROOT (HKCR).

Valor de retorno

S_OK se o método for bem-sucedido. Caso contrário, haverá o código de erro HRESULT se ocorrer um erro.

Comentários

O redirecionamento do Registro não está habilitado por padrão. Se você habilitar essa opção, o acesso ao registro será redirecionado para HKEY_CURRENT_USER\Software\Classes.

O redirecionamento não é global. Somente as estruturas MFC e ATL são afetadas por esse redirecionamento do registro.

Requisitos

Cabeçalho: atlbase.h

AfxRegCreateKey

Cria a chave do Registro especificada.

Sintaxe

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

Parâmetros

hKey
Um identificador para uma chave aberta do Registro.

lpSubKey
O nome de uma chave que essa função abre ou cria.

phkResult
Um ponteiro para uma variável que recebe um identificador para a chave aberta ou criada.

pTM
Ponteiro para um objeto CAtlTransactionManager.

Valor de retorno

Se a função obtiver êxito, o valor retornado será ERROR_SUCCESS. Se a função falhar, o valor retornado será o código de erro diferente de zero definido em Winerror.h.

Requisitos

Cabeçalho: afxpriv.h

AfxRegDeleteKey

Exclui a chave do Registro especificada.

Sintaxe

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

Parâmetros

hKey
Um identificador para uma chave aberta do Registro.

lpSubKey
O nome da chave a ser excluída.

pTM
Ponteiro para um objeto CAtlTransactionManager.

Valor de retorno

Se a função obtiver êxito, o valor retornado será ERROR_SUCCESS. Se a função falhar, o valor retornado será o código de erro diferente de zero definido em Winerror.h.

Requisitos

Cabeçalho: afxpriv.h

Um auxiliar para registrar um manipulador de visualização.

Sintaxe

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

Parâmetros

lpszCLSID
Especifica o CLSID do manipulador.

lpszShortTypeName
Especifica o ProgID do manipulador.

lpszFilterExt
Especifica a extensão de arquivo registrada com esse manipulador.

Requisitos

Cabeçalho afxdisp.h

AtlRegisterTypeLib

Essa função é chamada para registrar uma biblioteca de tipos.

ATLAPI AtlRegisterTypeLib(HINSTANCE hInstTypeLib, LPCOLESTR lpszIndex);

Parâmetros

hInstTypeLib
O identificador para a instância do módulo.

lpszIndex
Cadeia de caracteres no formato "\\N", em que N é o índice inteiro do recurso de biblioteca de tipos. Pode ser NULL se nenhum índice for necessário.

Valor de retorno

Retornará S_OK se houver êxito ou um erro HRESULT, em caso de falha.

Comentários

Essa função auxiliar é utilizada por AtlComModuleUnregisterServer e CAtlComModule::RegisterTypeLib.

Requisitos

Cabeçalho: atlbase.h

AfxRegOpenKey

Abre a chave do Registro especificada.

Sintaxe

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

Parâmetros

hKey
Um identificador para uma chave aberta do Registro.

lpSubKey
O nome de uma chave que essa função abre ou cria.

phkResult
Um ponteiro para uma variável que recebe um identificador para a chave criada.

pTM
Ponteiro para um objeto CAtlTransactionManager.

Valor de retorno

Se a função obtiver êxito, o valor retornado será ERROR_SUCCESS. Se a função falhar, o valor retornado será o código de erro diferente de zero definido em Winerror.h.

Requisitos

Cabeçalho: afxpriv.h

AfxRegOpenKeyEx

Abre a chave do Registro especificada.

Sintaxe

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

Parâmetros

hKey
Um identificador para uma chave aberta do Registro.

lpSubKey
O nome de uma chave que essa função abre ou cria.

ulOptions
Esse parâmetro é reservado e precisa ser zero.

samDesired
Uma máscara que especifica os direitos de acesso desejados para a chave.

phkResult
Um ponteiro para uma variável que recebe um identificador para a chave aberta.

pTM
Ponteiro para um objeto CAtlTransactionManager.

Valor de retorno

Se a função obtiver êxito, o valor retornado será ERROR_SUCCESS. Se a função falhar, o valor retornado será o código de erro diferente de zero definido em Winerror.h.

Requisitos

Cabeçalho: afxpriv.h

AfxUnregisterPreviewHandler

Um auxiliar para cancelar o registro de um manipulador de visualização.

Sintaxe

BOOL AFXAPI AfxUnRegisterPreviewHandler(LPCTSTR lpszCLSID);

Parâmetros

lpszCLSID
Especifica o CLSID do manipulador a ser cancelado.

Requisitos

Cabeçalho afxdisp.h

AtlSetPerUserRegistration

Define se o aplicativo redireciona o acesso do registro ao nó HKEY_CURRENT_USER (HKCU).

Sintaxe

ATLINLINE ATLAPI AtlSetPerUserRegistration(bool bEnable);

Parâmetros

bEnable
[in] TRUE indica que as informações do registro são direcionadas para o nó HKCU ; FALSE indica que o aplicativo grava informações do registro no nó padrão. O nó padrão é HKEY_CLASSES_ROOT (HKCR).

Valor de retorno

S_OK se o método for bem-sucedido. Caso contrário, haverá o código de erro HRESULT se ocorrer um erro.

Comentários

O redirecionamento do Registro não está habilitado por padrão. Se você habilitar essa opção, o acesso ao registro será redirecionado para HKEY_CURRENT_USER\Software\Classes.

O redirecionamento não é global. Somente as estruturas MFC e ATL são afetadas por esse redirecionamento do registro.

Requisitos

Cabeçalho: atlbase.h

AtlUnRegisterTypeLib

Essa função é chamada para cancelar o registro de uma biblioteca de tipos.

Sintaxe

ATLAPI AtlUnRegisterTypeLib(
    HINSTANCE hInstTypeLib,
    LPCOLESTR lpszIndex);

Parâmetros

hInstTypeLib
O identificador para a instância do módulo.

lpszIndex
Cadeia de caracteres no formato "\\N", em que N é o índice inteiro do recurso de biblioteca de tipos. Pode ser NULL se nenhum índice for necessário.

Valor de retorno

Retornará S_OK se houver êxito ou um erro HRESULT, em caso de falha.

Comentários

Essa função auxiliar é utilizada por CAtlComModule::UnRegisterTypeLib e AtlComModuleUnregisterServer.

Requisitos

Cabeçalho: atlbase.h

AtlLoadTypeLib

Essa função é chamada para carregar uma biblioteca de tipos.

Sintaxe

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

Parâmetros

hInstTypeLib
Identificador para o módulo associado à biblioteca de tipos.

lpszIndex
Cadeia de caracteres no formato "\\N", em que N é o índice inteiro do recurso de biblioteca de tipos. Pode ser NULL se nenhum índice for necessário.

pbstrPath
No retorno bem-sucedido, contém o caminho completo do módulo associado à biblioteca de tipos.

ppTypeLib
No retorno bem-sucedido, contém um ponteiro para um ponteiro para a biblioteca de tipos carregados.

Valor de retorno

Retornará S_OK se houver êxito ou um erro HRESULT, em caso de falha.

Comentários

Essa função auxiliar é utilizada por AtlRegisterTypeLib e AtlUnRegisterTypeLib.

AtlUpdateRegistryFromResourceD

Essa função foi preterida no Visual Studio 2013 e foi removida no Visual Studio 2015.

<removed>

Troca de Dados do Registro

Essa função é chamada para ler do ou gravar no Registro do sistema.

Sintaxe

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

Parâmetros

pT
Um ponteiro para o objeto atual.

rdxOp
Um valor de enumeração que indica qual operação a função deve executar. Confira a tabela na seção Comentários para obter os valores permitidos.

pItem
Ponteiro para os dados que devem ser lidos do registro ou gravados nele. Os dados também podem representar uma chave a ser excluída do registro. O valor padrão é NULL.

Valor de retorno

Retornará S_OK se houver êxito ou um erro HRESULT, em caso de falha.

Comentários

As macros BEGIN_RDX_MAP e END_RDX_MAP expandem para uma função que chama RegistryDataExchange.

Os possíveis valores de enumeração que indicam a operação que a função deve executar são mostrados na tabela a seguir:

Valor de enumeração Operação
eReadFromReg Leia dados do registro.
eWriteToReg Escreva dados no Registro.
eDeleteFromReg Exclua a chave do registro.

Requisitos

Cabeçalho: atlbase.h

Confira também

Funções
Macros de troca de dados de Registro