Поделиться через


Глобальные функции реестра и библиотеки типов

Эти функции обеспечивают поддержку загрузки и регистрации библиотеки типов.

Важно!

Функции, перечисленные в следующих таблицах, нельзя использовать в приложениях, которые выполняются в среда выполнения Windows.

Имя Описание
AfxRegCreateKey Создает указанный раздел реестра.
AfxRegDeleteKey Удаляет указанный раздел реестра.
AfxRegisterPreviewHandler Вспомогательный обработчик для регистрации обработчика предварительной версии.
AfxUnregisterPreviewHandler Вспомогательный обработчик для отмены регистрации обработчика предварительной версии.
AtlRegisterTypeLib Эта функция вызывается для регистрации библиотеки типов.
AtlUnRegisterTypeLib Эта функция вызывается для отмены регистрации библиотеки типов
AfxRegOpenKey Открывает указанный раздел реестра.
AfxRegOpenKeyEx Открывает указанный раздел реестра.
AtlLoadTypeLib Эта функция вызывается для загрузки библиотеки типов.
AtlUpdateRegistryFromResourceD Эта функция вызывается для обновления реестра из предоставленного ресурса.
RegistryDataExchange Эта функция вызывается для чтения из системного реестра или записи в него. Вызывается макросами Обмена данными реестра.

Эти функции управляют тем, какой узел в реестре программа использует для хранения информации.

Имя Описание
AtlGetPerUserRegistration Извлекает, перенаправляет ли приложение доступ реестра к узлу HKEY_CURRENT_USER ( HKCU).
AtlSetPerUserRegistration Задает, перенаправляет ли приложение доступ реестра к узлу HKEY_CURRENT_USER ( HKCU).

Требования

Заголовок: atlbase.h

AtlGetPerUserRegistration

Эта функция позволяет определить, перенаправляет ли приложение доступ реестра к узлу HKEY_CURRENT_USER (HKCU).

Синтаксис

ATLINLINE ATLAPI AtlGetPerUserRegistration(bool* pEnabled);

Параметры

pEnabled
[out] ЗНАЧЕНИЕ TRUE указывает, что сведения о реестре направляются на узел HKCU ; FALSE указывает, что приложение записывает сведения реестра на узел по умолчанию. Узел по умолчанию — HKEY_CLASSES_ROOT (HKCR).

Возвращаемое значение

S_OK, если метод выполнен успешно, в противном случае код ошибки HRESULT, если возникает ошибка.

Замечания

Перенаправление реестра по умолчанию не включено. Если этот параметр включен, доступ к реестру перенаправляется на HKEY_CURRENT_USER\Software\Classes.

Перенаправление не является глобальным. Только платформы MFC и ATL влияют на перенаправление реестра.

Требования

Заголовок: atlbase.h

AfxRegCreateKey

Создает указанный раздел реестра.

Синтаксис

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

Параметры

hKey
Дескриптор открытого раздела реестра.

lpSubKey
Имя ключа, который открывается или создает эта функция.

phkResult
Указатель на переменную, которая получает дескриптор открытого или созданного ключа.

Ptm
Указатель на CAtlTransactionManager объект.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение ERROR_SUCCESS. Если функция завершается ошибкой, возвращаемое значение представляет собой ненулевой код ошибки, определенный в Winerror.h.

Требования

Заголовок: afxpriv.h

AfxRegDeleteKey

Удаляет указанный раздел реестра.

Синтаксис

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

Параметры

hKey
Дескриптор открытого раздела реестра.

lpSubKey
Имя ключа, который необходимо удалить.

Ptm
Указатель на CAtlTransactionManager объект.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение ERROR_SUCCESS. Если функция завершается ошибкой, возвращаемое значение представляет собой ненулевой код ошибки, определенный в Winerror.h.

Требования

Заголовок: afxpriv.h

Вспомогательный обработчик для регистрации обработчика предварительной версии.

Синтаксис

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

Параметры

lpszCLSID
Задает CLSID обработчика.

lpszShortTypeName
Задает идентификатор progID обработчика.

lpszFilterExt
Указывает расширение файла, зарегистрированного в этом обработчике.

Требования

Заголовок: afxdisp.h

AtlRegisterTypeLib

Эта функция вызывается для регистрации библиотеки типов.

ATLAPI AtlRegisterTypeLib(HINSTANCE hInstTypeLib, LPCOLESTR lpszIndex);

Параметры

hInstTypeLib
Дескриптор экземпляра модуля.

lpszIndex
Строка в формате "\\N", где N является целым индексом ресурса библиотеки типов. Может иметь значение NULL, если индекс не требуется.

Возвращаемое значение

Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.

Замечания

Эта вспомогательной функцией используется AtlComModuleUnregisterServer и CAtlComModule::RegisterTypeLib.

Требования

Заголовок: atlbase.h

AfxRegOpenKey

Открывает указанный раздел реестра.

Синтаксис

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

Параметры

hKey
Дескриптор открытого раздела реестра.

lpSubKey
Имя ключа, который открывается или создает эта функция.

phkResult
Указатель на переменную, которая получает дескриптор созданного ключа.

Ptm
Указатель на CAtlTransactionManager объект.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение ERROR_SUCCESS. Если функция завершается ошибкой, возвращаемое значение представляет собой ненулевой код ошибки, определенный в Winerror.h.

Требования

Заголовок: afxpriv.h

AfxRegOpenKeyEx

Открывает указанный раздел реестра.

Синтаксис

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

Параметры

hKey
Дескриптор открытого раздела реестра.

lpSubKey
Имя ключа, который открывается или создает эта функция.

ulOptions
Этот параметр зарезервирован и должен быть нулевым.

samDesired
Маска, указывающая требуемые права доступа к ключу.

phkResult
Указатель на переменную, которая получает дескриптор открытого ключа.

Ptm
Указатель на CAtlTransactionManager объект.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение ERROR_SUCCESS. Если функция завершается ошибкой, возвращаемое значение представляет собой ненулевой код ошибки, определенный в Winerror.h.

Требования

Заголовок: afxpriv.h

AfxUnregisterPreviewHandler

Вспомогательный обработчик для отмены регистрации обработчика предварительной версии.

Синтаксис

BOOL AFXAPI AfxUnRegisterPreviewHandler(LPCTSTR lpszCLSID);

Параметры

lpszCLSID
Указывает CLSID обработчика для отмены регистрации.

Требования

Заголовок: afxdisp.h

AtlSetPerUserRegistration

Задает, перенаправляет ли приложение доступ к узлу HKEY_CURRENT_USER (HKCU).

Синтаксис

ATLINLINE ATLAPI AtlSetPerUserRegistration(bool bEnable);

Параметры

bEnable
[in] ЗНАЧЕНИЕ TRUE указывает, что сведения о реестре направляются на узел HKCU ; FALSE указывает, что приложение записывает сведения реестра на узел по умолчанию. Узел по умолчанию — HKEY_CLASSES_ROOT (HKCR).

Возвращаемое значение

S_OK, если метод выполнен успешно, в противном случае код ошибки HRESULT, если возникает ошибка.

Замечания

Перенаправление реестра по умолчанию не включено. Если этот параметр включен, доступ к реестру перенаправляется на HKEY_CURRENT_USER\Software\Classes.

Перенаправление не является глобальным. Только платформы MFC и ATL влияют на перенаправление реестра.

Требования

Заголовок: atlbase.h

AtlUnRegisterTypeLib

Эта функция вызывается для отмены регистрации библиотеки типов.

Синтаксис

ATLAPI AtlUnRegisterTypeLib(
    HINSTANCE hInstTypeLib,
    LPCOLESTR lpszIndex);

Параметры

hInstTypeLib
Дескриптор экземпляра модуля.

lpszIndex
Строка в формате "\\N", где N является целым индексом ресурса библиотеки типов. Может иметь значение NULL, если индекс не требуется.

Возвращаемое значение

Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.

Замечания

Эта вспомогательной функцией используется CAtlComModule::UnRegisterTypeLib и AtlComModuleUnregisterServer.

Требования

Заголовок: atlbase.h

AtlLoadTypeLib

Эта функция вызывается для загрузки библиотеки типов.

Синтаксис

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

Параметры

hInstTypeLib
Обработка модуля, связанного с библиотекой типов.

lpszIndex
Строка в формате "\\N", где N является целым индексом ресурса библиотеки типов. Может иметь значение NULL, если индекс не требуется.

pbstrPath
При успешном возвращении содержит полный путь модуля, связанного с библиотекой типов.

ppTypeLib
При успешном возвращении содержит указатель на указатель на загруженную библиотеку типов.

Возвращаемое значение

Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.

Замечания

Эта вспомогательные функции используются AtlRegisterTypeLib и AtlUnRegisterTypeLib.

AtlUpdateRegistryFromResourceD

Эта функция объявлена устаревшей Visual Studio 2013 и удалена в Visual Studio 2015.

<removed>

RegistryDataExchange

Эта функция вызывается для чтения из системного реестра или записи в него.

Синтаксис

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

Параметры

Pt
Указатель на текущий объект.

rdxOp
Значение перечисления, указывающее, какая операция должна выполняться функцией. См. таблицу в разделе "Примечания" для допустимых значений.

pItem
Указатель на данные, которые должны быть считываются или записываются в реестр. Данные также могут представлять ключ для удаления из реестра. Значение по умолчанию — NULL.

Возвращаемое значение

Возвращает S_OK при успешном выполнении или ошибку HRESULT при сбое.

Замечания

Макросы BEGIN_RDX_MAP и END_RDX_MAP развернуть в функцию, которая вызываетRegistryDataExchange.

Возможные значения перечисления, указывающие на операцию, которую должна выполнить функция, показаны в следующей таблице:

Значение перечисления Операция
eReadFromReg Чтение данных из реестра.
eWriteToReg Запись данных в реестр.
eDeleteFromReg Удалите раздел из реестра.

Требования

Заголовок: atlbase.h

См. также

Функции
Макросы для обмена данными с реестром