CComGITPtr (clase)
Esta clase proporciona métodos que se ocupan de los punteros de interfaz y la tabla de interfaz global (GIT).
Sintaxis
template <class T>
class CComGITPtr
Parámetros
T
Tipo del puntero de interfaz que se va a almacenar en GIT.
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CComGITPtr::CComGITPtr | Constructor . |
CComGITPtr::~CComGITPtr | El destructor . |
Métodos públicos
Nombre | Descripción |
---|---|
CComGITPtr::Attach | Llame a este método para registrar el puntero de interfaz en la tabla de interfaz global (GIT). |
CComGITPtr::CopyTo | Llame a este método para copiar la interfaz de la tabla de interfaz global (GIT) al puntero pasado. |
CComGITPtr::Detach | Llame a este método para desasociar la interfaz del objeto CComGITPtr . |
CComGITPtr::GetCookie | Llame a este método para devolver la cookie del objeto CComGITPtr . |
CComGITPtr::Revoke | Llame a este método para quitar la interfaz de la tabla de interfaz global (GIT). |
Operadores públicos
Nombre | Descripción |
---|---|
CComGITPtr::operator DWORD | Devuelve la cookie del objeto CComGITPtr . |
CComGITPtr::operator = | Operador de asignación. |
Miembros de datos públicos
Nombre | Descripción |
---|---|
CComGITPtr::m_dwCookie | La cookie. |
Comentarios
Los objetos que agregan el serializador de subprocesos libre y necesitan usar punteros de interfaz obtenidos de otros objetos deben realizar pasos adicionales para garantizar que las interfaces se serializaron correctamente. Normalmente, esto implica almacenar los punteros de interfaz en GIT y obtener el puntero de GIT cada vez que se usa. La clase CComGITPtr
se proporciona para ayudarle a usar punteros de interfaz almacenados en GIT.
Nota:
La utilidad de tabla de interfaz global solo está disponible en Windows 95 con DCOM versión 1.1 y posteriores, Windows 98, Windows NT 4.0 con Service Pack 3 y versiones posteriores, y Windows 2000.
Requisitos
Encabezado: atlbase.h
CComGITPtr::Attach
Llame a este método para registrar el puntero de interfaz en la tabla de interfaz global (GIT).
HRESULT Attach(T* p) throw();
HRESULT Attach(DWORD dwCookie) throw();
Parámetros
p
Puntero de interfaz que se va a agregar al GIT.
dwCookie
Cookie usada para identificar el puntero de interfaz.
Valor devuelto
Devuelve S_OK si es correcto o un error HRESULT en caso de error.
Comentarios
En las compilaciones de depuración, se producirá un error de aserción si GIT no es válido o si la cookie es igual a NULL.
CComGITPtr::CComGITPtr
Constructor .
CComGITPtr() throw();
CComGITPtr(T* p);
CComGITPtr(const CComGITPtr& git);
explicit CComGITPtr(DWORD dwCookie) throw();
CComGITPtr(CComGITPtr&& rv);
Parámetros
p
[in] Puntero de interfaz que se va a almacenar en la tabla de interfaz global (GIT).
git
[in] Referencia a un objeto CComGITPtr
existente.
dwCookie
[in] Cookie usada para identificar el puntero de interfaz.
rv
[in] Objeto CComGITPtr
de origen del que se van a mover los datos.
Comentarios
Crea un nuevo objeto CComGITPtr
, opcionalmente mediante un objeto existente CComGITPtr
.
El constructor que utiliza rv es un constructor de movimiento. Los datos se mueven del origen, rv y, a continuación, rv se borra.
CComGITPtr::~CComGITPtr
El destructor .
~CComGITPtr() throw();
Comentarios
Quita la interfaz de la tabla de interfaz global (GIT), mediante CComGITPtr::Revoke.
CComGITPtr::CopyTo
Llame a este método para copiar la interfaz de la tabla de interfaz global (GIT) al puntero pasado.
HRESULT CopyTo(T** pp) const throw();
Parámetros
pp
Puntero que se va a recibir la interfaz.
Valor devuelto
Devuelve S_OK si es correcto o un error HRESULT en caso de error.
Comentarios
La interfaz del GIT se copia en el puntero pasado. El autor de la llamada debe liberar el puntero cuando ya no sea necesario.
CComGITPtr::Detach
Llame a este método para desasociar la interfaz del objeto CComGITPtr
.
DWORD Detach() throw();
Valor devuelto
Devuelve la cookie del objeto CComGITPtr
.
Comentarios
Depende del autor de la llamada quitar la interfaz de GIT mediante CComGITPtr::Revoke.
CComGITPtr::GetCookie
Llame a este método para devolver la cookie del objeto CComGITPtr
.
DWORD GetCookie() const;
Valor devuelto
Devuelve la cookie.
Comentarios
La cookie es una variable que se usa para identificar una interfaz y su ubicación.
CComGITPtr::m_dwCookie
La cookie.
DWORD m_dwCookie;
Comentarios
La cookie es una variable miembro que se usa para identificar una interfaz y su ubicación.
CComGITPtr::operator =
Operador de asignación.
CComGITPtr& operator= (T* p);
CComGITPtr& operator= (const CComGITPtr& git);
CComGITPtr& operator= (DWORD dwCookie);
CComGITPtr& operator= (CComGITPtr&& rv);
Parámetros
p
[in] Puntero a una interfaz.
git
[in] Referencia a un objeto CComGITPtr
.
dwCookie
[in] Cookie usada para identificar el puntero de interfaz.
rv
[in] CComGITPtr
del que se van a mover los datos.
Valor devuelto
Devuelve el objeto CComGITPtr
actualizado.
Comentarios
Asigna un nuevo valor a un objeto CComGITPtr
, ya sea desde un objeto existente o desde una referencia a una tabla de interfaz global.
CComGITPtr::operator DWORD
Devuelve la cookie asociada al objeto CComGITPtr
.
operator DWORD() const;
Comentarios
La cookie es una variable que se usa para identificar una interfaz y su ubicación.
CComGITPtr::Revoke
Llame a este método para quitar la interfaz actual de la tabla de interfaz global (GIT).
HRESULT Revoke() throw();
Valor devuelto
Devuelve S_OK si es correcto o un error HRESULT en caso de error.
Comentarios
Quita la interfaz de GIT.
Consulte también
Contador de referencias de subprocesamiento libre
Acceso a interfaces entre apartamentos
Cuándo usar la tabla de interfaz global
Información general sobre la clase