Funzioni globali Registry e TypeLib
Queste funzioni forniscono il supporto per il caricamento e la registrazione di una libreria dei tipi.
Importante
Le funzioni elencate nelle tabelle seguenti non possono essere usate nelle applicazioni eseguite in Windows Runtime.
Nome | Descrizione |
---|---|
AfxRegCreateKey | Crea la chiave del Registro di sistema specificata. |
AfxRegDeleteKey | Elimina la chiave del Registro di sistema specificata. |
AfxRegisterPreviewHandler | Helper per registrare un gestore di anteprima. |
AfxUnregisterPreviewHandler | Helper per annullare la registrazione di un gestore di anteprima. |
AtlRegisterTypeLib | Questa funzione viene chiamata per registrare una libreria dei tipi. |
AtlUnRegisterTypeLib | Questa funzione viene chiamata per annullare la registrazione di una libreria dei tipi |
AfxRegOpenKey | Apre la chiave del Registro di sistema specificata. |
AfxRegOpenKeyEx | Apre la chiave del Registro di sistema specificata. |
AtlLoadTypeLib | Questa funzione viene chiamata per caricare una libreria dei tipi. |
AtlUpdateRegistryFromResourceD | Questa funzione viene chiamata per aggiornare il Registro di sistema dalla risorsa specificata. |
RegistryDataExchange | Questa funzione viene chiamata per leggere o scrivere nel Registro di sistema. Chiamato dalle macro di Scambio dati del Registro di sistema. |
Queste funzioni controllano il nodo del Registro di sistema usato dal programma per archiviare le informazioni.
Nome | Descrizione |
---|---|
AtlGetPerUserRegistration | Recupera un valore che indica se l'applicazione reindirizza l'accesso del Registro di sistema al nodo HKEY_CURRENT_USER ( HKCU). |
AtlSetPerUserRegistration | Imposta un valore che indica se l'applicazione reindirizza l'accesso al Registro di sistema al nodo HKEY_CURRENT_USER ( HKCU). |
Requisiti
Intestazione: atlbase.h
AtlGetPerUserRegistration
Usare questa funzione per determinare se l'applicazione reindirizza l'accesso del Registro di sistema al nodo HKEY_CURRENT_USER (HKCU).
Sintassi
ATLINLINE ATLAPI AtlGetPerUserRegistration(bool* pEnabled);
Parametri
pEnabled
[out] TRUE indica che le informazioni del Registro di sistema sono indirizzate al nodo HKCU ; FALSE indica che l'applicazione scrive le informazioni del Registro di sistema nel nodo predefinito. Il nodo predefinito è HKEY_CLASSES_ROOT (HKCR).
Valore restituito
S_OK se il metodo ha esito positivo; in caso contrario, se si verifica un errore, il codice di errore HRESULT.
Osservazioni:
Il reindirizzamento del Registro di sistema non è abilitato per impostazione predefinita. Se si abilita questa opzione, l'accesso al Registro di sistema viene reindirizzato a HKEY_CURRENT_USER\Software\Classes.
Il reindirizzamento non è globale. Solo i framework MFC e ATL sono interessati da questo reindirizzamento del Registro di sistema.
Requisiti
Intestazione: atlbase.h
AfxRegCreateKey
Crea la chiave del Registro di sistema specificata.
Sintassi
LONG AFXAPI AfxRegCreateKey(HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult, CAtlTransactionManager* pTM = NULL);
Parametri
hKey
Handle per una chiave del Registro di sistema aperta.
lpSubKey
Nome di una chiave che questa funzione apre o crea.
phkResult
Puntatore a una variabile che riceve un handle per la chiave aperta o creata.
pTM
Puntatore a un oggetto CAtlTransactionManager
.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è ERROR_SUCCESS. Se la funzione ha esito negativo, il valore restituito è un codice di errore diverso da zero definito in Winerror.h.
Requisiti
Intestazione: afxpriv.h
AfxRegDeleteKey
Elimina la chiave del Registro di sistema specificata.
Sintassi
LONG AFXAPI AfxRegDeleteKey(HKEY hKey, LPCTSTR lpSubKey, CAtlTransactionManager* pTM = NULL);
Parametri
hKey
Handle per una chiave del Registro di sistema aperta.
lpSubKey
Nome della chiave da eliminare.
pTM
Puntatore a un oggetto CAtlTransactionManager
.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è ERROR_SUCCESS. Se la funzione ha esito negativo, il valore restituito è un codice di errore diverso da zero definito in Winerror.h.
Requisiti
Intestazione: afxpriv.h
Helper per registrare un gestore di anteprima.
Sintassi
BOOL AFXAPI AfxRegisterPreviewHandler(LPCTSTR lpszCLSID, LPCTSTR lpszShortTypeName, LPCTSTR lpszFilterExt);
Parametri
lpszCLSID
Specifica il CLSID del gestore.
lpszShortTypeName
Specifica il ProgID del gestore.
lpszFilterExt
Specifica l'estensione di file registrata con questo gestore.
Requisiti
Intestazione: afxdisp.h
AtlRegisterTypeLib
Questa funzione viene chiamata per registrare una libreria dei tipi.
ATLAPI AtlRegisterTypeLib(HINSTANCE hInstTypeLib, LPCOLESTR lpszIndex);
Parametri
hInstTypeLib
Handle per l'istanza del modulo.
lpszIndex
Stringa nel formato "\\N", dove N è l'indice intero della risorsa libreria dei tipi. Può essere NULL se non è necessario alcun indice.
Valore restituito
Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.
Osservazioni:
Questa funzione helper viene utilizzata da AtlComModuleUnregisterServer e CAtlComModule::RegisterTypeLib.
Requisiti
Intestazione: atlbase.h
AfxRegOpenKey
Apre la chiave del Registro di sistema specificata.
Sintassi
LONG AFXAPI AfxRegOpenKey(HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult, CAtlTransactionManager* pTM = NULL);
Parametri
hKey
Handle per una chiave del Registro di sistema aperta.
lpSubKey
Nome di una chiave che questa funzione apre o crea.
phkResult
Puntatore a una variabile che riceve un handle per la chiave creata.
pTM
Puntatore a un oggetto CAtlTransactionManager
.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è ERROR_SUCCESS. Se la funzione ha esito negativo, il valore restituito è un codice di errore diverso da zero definito in Winerror.h.
Requisiti
Intestazione: afxpriv.h
AfxRegOpenKeyEx
Apre la chiave del Registro di sistema specificata.
Sintassi
LONG AFXAPI AfxRegOpenKeyEx(HKEY hKey, LPCTSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult, CAtlTransactionManager* pTM = NULL);
Parametri
hKey
Handle per una chiave del Registro di sistema aperta.
lpSubKey
Nome di una chiave che questa funzione apre o crea.
ulOptions
Questo parametro è riservato e deve essere zero.
samDesired
Maschera che specifica i diritti di accesso desiderati per la chiave.
phkResult
Puntatore a una variabile che riceve un handle per la chiave aperta.
pTM
Puntatore a un oggetto CAtlTransactionManager
.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è ERROR_SUCCESS. Se la funzione ha esito negativo, il valore restituito è un codice di errore diverso da zero definito in Winerror.h.
Requisiti
Intestazione: afxpriv.h
AfxUnregisterPreviewHandler
Helper per annullare la registrazione di un gestore di anteprima.
Sintassi
BOOL AFXAPI AfxUnRegisterPreviewHandler(LPCTSTR lpszCLSID);
Parametri
lpszCLSID
Specifica il CLSID del gestore da annullare la registrazione.
Requisiti
Intestazione: afxdisp.h
AtlSetPerUserRegistration
Imposta un valore che indica se l'applicazione reindirizza l'accesso del Registro di sistema al nodo HKEY_CURRENT_USER (HKCU).
Sintassi
ATLINLINE ATLAPI AtlSetPerUserRegistration(bool bEnable);
Parametri
bEnable
[in] TRUE indica che le informazioni del Registro di sistema sono indirizzate al nodo HKCU ; FALSE indica che l'applicazione scrive le informazioni del Registro di sistema nel nodo predefinito. Il nodo predefinito è HKEY_CLASSES_ROOT (HKCR).
Valore restituito
S_OK se il metodo ha esito positivo; in caso contrario, se si verifica un errore, il codice di errore HRESULT.
Osservazioni:
Il reindirizzamento del Registro di sistema non è abilitato per impostazione predefinita. Se si abilita questa opzione, l'accesso al Registro di sistema viene reindirizzato a HKEY_CURRENT_USER\Software\Classes.
Il reindirizzamento non è globale. Solo i framework MFC e ATL sono interessati da questo reindirizzamento del Registro di sistema.
Requisiti
Intestazione: atlbase.h
AtlUnRegisterTypeLib
Questa funzione viene chiamata per annullare la registrazione di una libreria dei tipi.
Sintassi
ATLAPI AtlUnRegisterTypeLib(
HINSTANCE hInstTypeLib,
LPCOLESTR lpszIndex);
Parametri
hInstTypeLib
Handle per l'istanza del modulo.
lpszIndex
Stringa nel formato "\\N", dove N è l'indice intero della risorsa libreria dei tipi. Può essere NULL se non è necessario alcun indice.
Valore restituito
Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.
Osservazioni:
Questa funzione helper viene utilizzata da CAtlComModule::UnRegisterTypeLib e AtlComModuleUnregisterServer.
Requisiti
Intestazione: atlbase.h
AtlLoadTypeLib
Questa funzione viene chiamata per caricare una libreria dei tipi.
Sintassi
ATLINLINE ATLAPI AtlLoadTypeLib(
HINSTANCE hInstTypeLib,
LPCOLESTR lpszIndex,
BSTR* pbstrPath,
ITypeLib** ppTypeLib);
Parametri
hInstTypeLib
Handle per il modulo associato alla libreria dei tipi.
lpszIndex
Stringa nel formato "\\N", dove N è l'indice intero della risorsa libreria dei tipi. Può essere NULL se non è necessario alcun indice.
pbstrPath
In caso di esito positivo, contiene il percorso completo del modulo associato alla libreria dei tipi.
ppTypeLib
In caso di esito positivo, contiene un puntatore a un puntatore alla libreria dei tipi caricata.
Valore restituito
Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.
Osservazioni:
Questa funzione helper viene utilizzata da AtlRegisterTypeLib e AtlUnRegisterTypeLib.
AtlUpdateRegistryFromResourceD
Questa funzione è stata deprecata in Visual Studio 2013 ed è stata rimossa in Visual Studio 2015.
<removed>
RegistryDataExchange
Questa funzione viene chiamata per leggere o scrivere nel Registro di sistema.
Sintassi
HRESULT RegistryDataExchange(
T* pT,
enum RDXOperations rdxOp,
void* pItem = NULL);
Parametri
Pt
Puntatore all'oggetto corrente.
rdxOp
Valore enumerazione che indica quale operazione deve essere eseguita dalla funzione. Per i valori consentiti, vedere la tabella nella sezione Osservazioni.
pItem
Puntatore ai dati da cui leggere o scrivere nel Registro di sistema. I dati possono anche rappresentare una chiave da eliminare dal Registro di sistema. Il valore predefinito è NULL.
Valore restituito
Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.
Osservazioni:
Le macro BEGIN_RDX_MAP e END_RDX_MAP espandere a una funzione che chiama RegistryDataExchange
.
I possibili valori di enumerazione che indicano l'operazione che la funzione deve eseguire sono illustrati nella tabella seguente:
Valore enumerazione | Operazione |
---|---|
eReadFromReg | Legge i dati dal Registro di sistema. |
eWriteToReg | Scrivere dati nel Registro di sistema. |
eDeleteFromReg | Eliminare la chiave dal Registro di sistema. |
Requisiti
Intestazione: atlbase.h