다음을 통해 공유


레지스트리 및 TypeLib 전역 함수

이러한 함수는 형식 라이브러리 로드 및 등록을 지원합니다.

Important

다음 표에 나열된 함수는 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

이 함수를 사용하여 애플리케이션이 레지스트리 액세스를 HKCU(HKEY_CURRENT_USER) 노드로 리디렉션하는지 여부를 확인합니다.

구문

ATLINLINE ATLAPI AtlGetPerUserRegistration(bool* pEnabled);

매개 변수

pEnabled
[out] TRUE는 레지스트리 정보가 HKCU 노드로 전달됨을 나타냅니다. FALSE는 애플리케이션이 레지스트리 정보를 기본 노드에 씁니다. 기본 노드는 HKEY_CLASSES_ROOT(HKCR)입니다.

Return Value

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 개체에 대한 포인터입니다.

Return Value

함수가 성공하면 반환 값이 ERROR_SUCCESS. 함수가 실패하면 반환 값은 Winerror.h에 정의된 0이 아닌 오류 코드입니다.

요구 사항

헤더: afxpriv.h

AfxRegDeleteKey

지정된 레지스트리 키를 삭제합니다.

구문

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

매개 변수

hKey
열린 레지스트리 키에 대한 핸들입니다.

lpSubKey
삭제할 키의 이름입니다.

pTM
CAtlTransactionManager 개체에 대한 포인터입니다.

Return Value

함수가 성공하면 반환 값이 ERROR_SUCCESS. 함수가 실패하면 반환 값은 Winerror.h에 정의된 0이 아닌 오류 코드입니다.

요구 사항

헤더: 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일 수 있습니다.

Return Value

성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.

설명

이 도우미 함수는 AtlComModuleUnregisterServerCAtlComModule::RegisterTypeLib에서 활용됩니다.

요구 사항

헤더: atlbase.h

AfxRegOpenKey

지정된 레지스트리 키를 엽니다.

구문

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

매개 변수

hKey
열린 레지스트리 키에 대한 핸들입니다.

lpSubKey
이 함수가 열거나 만드는 키의 이름입니다.

phkResult
만든 키에 대한 핸들을 받는 변수에 대한 포인터입니다.

pTM
CAtlTransactionManager 개체에 대한 포인터입니다.

Return Value

함수가 성공하면 반환 값이 ERROR_SUCCESS. 함수가 실패하면 반환 값은 Winerror.h에 정의된 0이 아닌 오류 코드입니다.

요구 사항

헤더: afxpriv.h

AfxRegOpenKeyEx

지정된 레지스트리 키를 엽니다.

구문

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

매개 변수

hKey
열린 레지스트리 키에 대한 핸들입니다.

lpSubKey
이 함수가 열거나 만드는 키의 이름입니다.

ulOptions
이 매개 변수는 예약되어 있으며 0이어야 합니다.

samDesired
키에 대한 원하는 액세스 권한을 지정하는 마스크입니다.

phkResult
열린 키에 대한 핸들을 받는 변수에 대한 포인터입니다.

pTM
CAtlTransactionManager 개체에 대한 포인터입니다.

Return Value

함수가 성공하면 반환 값이 ERROR_SUCCESS. 함수가 실패하면 반환 값은 Winerror.h에 정의된 0이 아닌 오류 코드입니다.

요구 사항

헤더: afxpriv.h

AfxUnregisterPreviewHandler

미리 보기 처리기를 등록 취소하는 도우미입니다.

구문

BOOL AFXAPI AfxUnRegisterPreviewHandler(LPCTSTR lpszCLSID);

매개 변수

lpszCLSID
등록 취소할 처리기의 CLSID를 지정합니다.

요구 사항

헤더: afxdisp.h

AtlSetPerUserRegistration

애플리케이션이 레지스트리 액세스를 HKCU(HKEY_CURRENT_USER) 노드로 리디렉션하는지 여부를 설정합니다.

구문

ATLINLINE ATLAPI AtlSetPerUserRegistration(bool bEnable);

매개 변수

bEnable
[in] TRUE는 레지스트리 정보가 HKCU 노드로 전달됨을 나타냅니다. FALSE는 애플리케이션이 레지스트리 정보를 기본 노드에 씁니다. 기본 노드는 HKEY_CLASSES_ROOT(HKCR)입니다.

Return Value

S_OK 메서드가 성공하면 오류가 발생하면 HRESULT 오류 코드가 됩니다.

설명

레지스트리 리디렉션은 기본적으로 사용하도록 설정되지 않습니다. 이 옵션을 사용하면 레지스트리 액세스가 HKEY_CURRENT_USER\Software\Classes로 리디렉션됩니다.

리디렉션이 전역이 아닙니다. MFC 및 ATL 프레임워크만 이 레지스트리 리디렉션의 영향을 받습니다.

요구 사항

헤더: atlbase.h

AtlUnRegisterTypeLib

이 함수는 형식 라이브러리를 등록 취소하기 위해 호출됩니다.

구문

ATLAPI AtlUnRegisterTypeLib(
    HINSTANCE hInstTypeLib,
    LPCOLESTR lpszIndex);

매개 변수

hInstTypeLib
모듈 인스턴스에 대한 핸들입니다.

lpszIndex
형식 "\\N"의 문자열입니다. 여기서 N은 형식 라이브러리 리소스의 정수 인덱스입니다. 인덱스가 필요하지 않은 경우 NULL일 수 있습니다.

Return Value

성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.

설명

이 도우미 함수는 CAtlComModule::UnRegisterTypeLibAtlComModuleUnregisterServer에서 활용됩니다.

요구 사항

헤더: atlbase.h

AtlLoadTypeLib

이 함수는 형식 라이브러리를 로드하기 위해 호출됩니다.

구문

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

매개 변수

hInstTypeLib
형식 라이브러리와 연결된 모듈에 대한 핸들입니다.

lpszIndex
형식 "\\N"의 문자열입니다. 여기서 N은 형식 라이브러리 리소스의 정수 인덱스입니다. 인덱스가 필요하지 않은 경우 NULL일 수 있습니다.

pbstrPath
반환이 성공적이면 형식 라이브러리와 연결된 모듈의 전체 경로를 포함합니다.

ppTypeLib
반환이 성공적이면 로드된 형식 라이브러리에 대한 포인터에 대한 포인터를 포함합니다.

Return Value

성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.

설명

이 도우미 함수는 AtlRegisterTypeLibAtlUnRegisterTypeLib에서 활용됩니다.

AtlUpdateRegistryFromResourceD

이 함수는 Visual Studio 2013에서 사용이 중단되었으며, Visual Studio 2015에서 제거되었습니다.

<removed>

RegistryDataExchange

이 함수는 시스템 레지스트리에서 읽거나 쓰기 위해 호출됩니다.

구문

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

매개 변수

pT
현재 개체에 대한 포인터입니다.

rdxOp
함수가 수행해야 하는 작업을 나타내는 열거형 값입니다. 허용되는 값은 설명 섹션의 표를 참조하세요.

pItem
레지스트리에서 읽거나 쓸 데이터에 대한 포인터입니다. 데이터는 레지스트리에서 삭제할 키를 나타낼 수도 있습니다. 기본값은 NULL입니다.

Return Value

성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.

설명

매크로는 BEGIN_RDX_MAP END_RDX_MAP 호출 RegistryDataExchange하는 함수로 확장됩니다.

함수가 수행해야 하는 작업을 나타내는 가능한 열거형 값은 다음 표에 나와 있습니다.

열거형 값 연산
eReadFromReg 레지스트리에서 데이터를 읽습니다.
eWriteToReg 레지스트리에 데이터를 씁니다.
eDeleteFromReg 레지스트리에서 키를 삭제합니다.

요구 사항

헤더: atlbase.h

참고 항목

함수
레지스트리 데이터 교환 매크로