Udostępnij za pośrednictwem


Klasa CComGITPtr

Ta klasa udostępnia metody obsługi wskaźników interfejsu i tabeli interfejsu globalnego (GIT).

Składnia

template <class T>
class CComGITPtr

Parametry

T
Typ wskaźnika interfejsu, który ma być przechowywany w usłudze GIT.

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CComGITPtr::CComGITPtr Konstruktor.
CComGITPtr::~CComGITPtr Destruktora.

Metody publiczne

Nazwa/nazwisko opis
CComGITPtr::Attach Wywołaj tę metodę, aby zarejestrować wskaźnik interfejsu w tabeli interfejsu globalnego (GIT).
CComGITPtr::CopyTo Wywołaj tę metodę, aby skopiować interfejs z tabeli interfejsu globalnego (GIT) do przekazanego wskaźnika.
CComGITPtr::D etach Wywołaj tę metodę, aby usunąć skojarzenie interfejsu CComGITPtr z obiektu.
CComGITPtr::GetCookie Wywołaj tę metodę, aby zwrócić plik cookie z CComGITPtr obiektu .
CComGITPtr::Revoke Wywołaj tę metodę, aby usunąć interfejs z tabeli interfejsu globalnego (GIT).

Operatory publiczne

Nazwa/nazwisko opis
CComGITPtr::operator DWORD Zwraca plik cookie z CComGITPtr obiektu .
CComGITPtr::operator = Operator przypisania.

Publiczne elementy członkowskie danych

Nazwa/nazwisko opis
CComGITPtr::m_dwCookie Plik cookie.

Uwagi

Obiekty, które agregują wolny marshaler wątkowy i muszą używać wskaźników interfejsu uzyskanych z innych obiektów, muszą wykonać dodatkowe kroki, aby upewnić się, że interfejsy są prawidłowo marshalowane. Zazwyczaj polega to na przechowywaniu wskaźników interfejsu w usłudze GIT i pobieraniu wskaźnika z usługi GIT za każdym razem, gdy jest używany. CComGITPtr Klasa jest udostępniana, aby ułatwić korzystanie ze wskaźników interfejsu przechowywanych w usłudze GIT.

Uwaga

Funkcja tabel interfejsu globalnego jest dostępna tylko w systemie Windows 95 z dcOM w wersji 1.1 lub nowszej, Windows 98, Windows NT 4.0 z dodatkiem Service Pack 3 lub nowszym oraz Windows 2000.

Wymagania

Nagłówek: atlbase.h

CComGITPtr::Attach

Wywołaj tę metodę, aby zarejestrować wskaźnik interfejsu w tabeli interfejsu globalnego (GIT).

HRESULT Attach(T* p) throw();

HRESULT Attach(DWORD dwCookie) throw();

Parametry

p
Wskaźnik interfejsu, który ma zostać dodany do usługi GIT.

dwCookie
Plik cookie używany do identyfikowania wskaźnika interfejsu.

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

Uwagi

W kompilacjach debugowania wystąpi błąd asercji, jeśli usługa GIT jest nieprawidłowa lub plik cookie jest równy wartości NULL.

CComGITPtr::CComGITPtr

Konstruktor.

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

Parametry

p
[in] Wskaźnik interfejsu, który ma być przechowywany w tabeli interfejsu globalnego (GIT).

git
[in] Odwołanie do istniejącego CComGITPtr obiektu.

dwCookie
[in] Plik cookie służący do identyfikowania wskaźnika interfejsu.

Rv
[in] Obiekt źródłowy CComGITPtr do przenoszenia danych.

Uwagi

Tworzy nowy CComGITPtr obiekt, opcjonalnie przy użyciu istniejącego CComGITPtr obiektu.

Konstruktor korzystający z rv jest konstruktorem przenoszenia. Dane są przenoszone ze źródła, rv, a następnie wyczyszczone .

CComGITPtr::~CComGITPtr

Destruktora.

~CComGITPtr() throw();

Uwagi

Usuwa interfejs z tabeli interfejsu globalnego (GIT) przy użyciu narzędzia CComGITPtr::Revoke.

CComGITPtr::CopyTo

Wywołaj tę metodę, aby skopiować interfejs z tabeli interfejsu globalnego (GIT) do przekazanego wskaźnika.

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

Parametry

Pp
Wskaźnik, który ma odbierać interfejs.

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

Uwagi

Interfejs z repozytorium GIT jest kopiowany do przekazanego wskaźnika. Wskaźnik musi zostać zwolniony przez obiekt wywołujący, gdy nie jest już wymagany.

CComGITPtr::D etach

Wywołaj tę metodę, aby usunąć skojarzenie interfejsu CComGITPtr z obiektu.

DWORD Detach() throw();

Wartość zwracana

Zwraca plik cookie z CComGITPtr obiektu .

Uwagi

Obiekt wywołujący usuwa interfejs z usługi GIT przy użyciu narzędzia CComGITPtr::Revoke.

CComGITPtr::GetCookie

Wywołaj tę metodę, aby zwrócić plik cookie z CComGITPtr obiektu .

DWORD GetCookie() const;

Wartość zwracana

Zwraca plik cookie.

Uwagi

Plik cookie jest zmienną służącą do identyfikowania interfejsu i jego lokalizacji.

CComGITPtr::m_dwCookie

Plik cookie.

DWORD m_dwCookie;

Uwagi

Plik cookie jest zmienną składową używaną do identyfikowania interfejsu i jego lokalizacji.

CComGITPtr::operator =

Operator przypisania.

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

Parametry

p
[in] Wskaźnik do interfejsu.

git
[in] Odwołanie do CComGITPtr obiektu.

dwCookie
[in] Plik cookie służący do identyfikowania wskaźnika interfejsu.

Rv
[in] Element CComGITPtr do przenoszenia danych.

Wartość zwracana

Zwraca zaktualizowany CComGITPtr obiekt.

Uwagi

Przypisuje nową wartość do CComGITPtr obiektu z istniejącego obiektu lub z odwołania do tabeli interfejsu globalnego.

CComGITPtr::operator DWORD

Zwraca plik cookie skojarzony z obiektem CComGITPtr .

operator DWORD() const;

Uwagi

Plik cookie jest zmienną służącą do identyfikowania interfejsu i jego lokalizacji.

CComGITPtr::Revoke

Wywołaj tę metodę, aby usunąć bieżący interfejs z tabeli interfejsu globalnego (GIT).

HRESULT Revoke() throw();

Wartość zwracana

Zwraca S_OK powodzenia lub błąd HRESULT w przypadku niepowodzenia.

Uwagi

Usuwa interfejs z usługi GIT.

Zobacz też

Bezpłatny marshaler wątkowy
Uzyskiwanie dostępu do interfejsów w apartamentach
Kiedy używać tabeli interfejsu globalnego
Omówienie klasy