다음을 통해 공유


CComGITPtr 클래스

이 클래스는 인터페이스 포인터 및 GIT(전역 인터페이스 테이블)를 처리하기 위한 메서드를 제공합니다.

구문

template <class T>
class CComGITPtr

매개 변수

T
GIT에 저장할 인터페이스 포인터의 형식입니다.

멤버

공용 생성자

속성 설명
CComGITPtr::CComGITPtr 생성자입니다.
CComGITPtr::~CComGITPtr 소멸자입니다.

공용 메서드

이름 설명
CComGITPtr::Attach 이 메서드를 호출하여 GIT(전역 인터페이스 테이블)에 인터페이스 포인터를 등록합니다.
CComGITPtr::CopyTo 이 메서드를 호출하여 GIT(전역 인터페이스 테이블)에서 전달된 포인터로 인터페이스를 복사합니다.
CComGITPtr::D etach 개체에서 인터페이스를 분리하려면 이 메서드를 CComGITPtr 호출합니다.
CComGITPtr::GetCookie 개체에서 쿠키를 반환하려면 이 메서드를 호출합니다 CComGITPtr .
CComGITPtr::Revoke 이 메서드를 호출하여 GIT(전역 인터페이스 테이블)에서 인터페이스를 제거합니다.

Public 연산자

속성 설명
CComGITPtr::operator DWORD 개체에서 쿠키를 CComGITPtr 반환합니다.
CComGITPtr::operator = 대입 연산자입니다.

공용 데이터 멤버

속성 설명
CComGITPtr::m_dwCookie 쿠키입니다.

설명

자유 스레드 마샬러를 집계하고 다른 개체에서 가져온 인터페이스 포인터를 사용해야 하는 개체는 인터페이스가 올바르게 마샬링되도록 추가 단계를 수행해야 합니다. 일반적으로 여기에는 인터페이스 포인터를 GIT에 저장하고 사용될 때마다 GIT에서 포인터를 가져오는 작업이 포함됩니다. 이 클래스 CComGITPtr 는 GIT에 저장된 인터페이스 포인터를 사용하는 데 도움이 됩니다.

참고 항목

전역 인터페이스 테이블 기능은 DCOM 버전 1.1 이상인 Windows 95, Windows 98, Windows NT 4.0 서비스 팩 3 이상 및 Windows 2000에서만 사용할 수 있습니다.

요구 사항

헤더: atlbase.h

CComGITPtr::Attach

이 메서드를 호출하여 GIT(전역 인터페이스 테이블)에 인터페이스 포인터를 등록합니다.

HRESULT Attach(T* p) throw();

HRESULT Attach(DWORD dwCookie) throw();

매개 변수

p
GIT에 추가할 인터페이스 포인터입니다.

dwCookie
인터페이스 포인터를 식별하는 데 사용되는 쿠키입니다.

Return Value

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

설명

디버그 빌드에서 GIT가 유효하지 않거나 쿠키가 NULL과 같으면 어설션 오류가 발생합니다.

CComGITPtr::CComGITPtr

생성자입니다.

CComGITPtr() throw();
CComGITPtr(T* p);
CComGITPtr(const CComGITPtr& git);
explicit CComGITPtr(DWORD dwCookie) throw();
CComGITPtr(CComGITPtr&& rv);

매개 변수

p
[in] GIT(전역 인터페이스 테이블)에 저장할 인터페이스 포인터입니다.

git
[in] 기존 CComGITPtr 개체에 대한 참조입니다.

dwCookie
[in] 인터페이스 포인터를 식별하는 데 사용되는 쿠키입니다.

rv
[in] 데이터를 이동할 원본 CComGITPtr 개체입니다.

설명

필요에 따라 기존 개체를 사용하여 새 CComGITPtr 개체를 CComGITPtr 만듭니다.

rv활용하는 생성자는 이동 생성자입니다. 데이터는 원본, rv에서 이동한 다음 rv 가 지워집니다.

CComGITPtr::~CComGITPtr

소멸자입니다.

~CComGITPtr() throw();

설명

CComGITPtr::Revoke를 사용하여 GIT(전역 인터페이스 테이블)에서 인터페이스를 제거합니다.

CComGITPtr::CopyTo

이 메서드를 호출하여 GIT(전역 인터페이스 테이블)에서 전달된 포인터로 인터페이스를 복사합니다.

HRESULT CopyTo(T** pp) const throw();

매개 변수

pp
인터페이스를 받을 포인터입니다.

Return Value

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

설명

GIT의 인터페이스가 전달된 포인터에 복사됩니다. 더 이상 필요하지 않은 경우 호출자가 포인터를 해제해야 합니다.

CComGITPtr::D etach

개체에서 인터페이스를 분리하려면 이 메서드를 CComGITPtr 호출합니다.

DWORD Detach() throw();

Return Value

개체에서 쿠키를 CComGITPtr 반환합니다.

설명

CComGITPtr::Revoke를 사용하여 GIT에서 인터페이스를 제거하는 것은 호출자에게 달려 있습니다.

CComGITPtr::GetCookie

개체에서 쿠키를 반환하려면 이 메서드를 호출합니다 CComGITPtr .

DWORD GetCookie() const;

Return Value

쿠키를 반환합니다.

설명

쿠키는 인터페이스와 해당 위치를 식별하는 데 사용되는 변수입니다.

CComGITPtr::m_dwCookie

쿠키입니다.

DWORD m_dwCookie;

설명

쿠키는 인터페이스 및 해당 위치를 식별하는 데 사용되는 멤버 변수입니다.

CComGITPtr::operator =

할당 연산자입니다.

CComGITPtr& operator= (T* p);
CComGITPtr& operator= (const CComGITPtr& git);
CComGITPtr& operator= (DWORD dwCookie);
CComGITPtr& operator= (CComGITPtr&& rv);

매개 변수

p
[in] 인터페이스에 대한 포인터입니다.

git
[in] CComGITPtr 개체에 대한 참조입니다.

dwCookie
[in] 인터페이스 포인터를 식별하는 데 사용되는 쿠키입니다.

rv
[in] CComGITPtr 데이터를 이동할 원본입니다.

Return Value

업데이트 CComGITPtr 된 개체를 반환합니다.

설명

기존 개체 또는 전역 인터페이스 테이블에 대한 참조에서 개체에 새 값을 CComGITPtr 할당합니다.

CComGITPtr::operator DWORD

개체와 연결된 쿠키를 CComGITPtr 반환합니다.

operator DWORD() const;

설명

쿠키는 인터페이스와 해당 위치를 식별하는 데 사용되는 변수입니다.

CComGITPtr::Revoke

이 메서드를 호출하여 GIT(전역 인터페이스 테이블)에서 현재 인터페이스를 제거합니다.

HRESULT Revoke() throw();

Return Value

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

설명

GIT에서 인터페이스를 제거합니다.

참고 항목

자유 스레드 마샬러
아파트 간 인터페이스 액세스
전역 인터페이스 테이블을 사용하는 경우
클래스 개요