4.2 Creación del cliente
COM
El cliente debe realizar las siguientes tareas:
Iniciar la librería COM
Obtener la interfaz
Manipular el objeto a través de su interfaz
Liberar las interfaces
Finalizar la librería COM
Para iniciar la librería COM hay que llamar al método del API COM
CoInitialize:
hr = CoInitialize(NULL);
if ( SUCCEEDED(hr) )
{
...
}
- El método CoInitialize
inicializa la librería en el thread de ejecución desde el que se invoque.
Es necesario llamar a CoInitialize desde cada thread de la aplicación que
quiera acceder a objetos COM.
OBTENER LA INTERFAZ
Para obtener la interfaz inicial llamamos al método CoCreateInstance, este
creará una nueva instancia de un objeto COM y nos devolverá un puntero a su
interfaz.
IUnknown *pIUnknown = NULL;
hr = CoCreateInstance(CLSID_UserInfo, NULL,
CLSCTX_INPROC_SERVER, IID_IUnknown,
(LPVOID *)&pIUnknown);
if (SUCCEEDED(hr))
{....}
A través del puntero a IUnknow obtener el puntero a la interfaz IUserInfo
hr = pIUnknown->QueryInterface(IID-IUserInfo,
(LPVOID
*)&pIUserInfo);
if (SUCCEEDED(hr))
{\\manipulación del
objeto}
LIBERAR LAS INTERFACES
para liberar las interfaces hay que llamar al método Release, si el objeto
COM no tiene más interfaces referenciadas se borrara automaticamente:
pIUserInfo->Release();
pIUnknown->Release();
FINALIZAR LAS LIBRERIAS
La librería COM se finaliza a través del método CoUninitialize, una vez
llamado a este método no se podrá seguir llamando a funciones de la librería
COM ni manipulando objetos COM.
DCOM
En el menú Archivo , seleccione la opción Nuevo proyecto,
seleccione EXE estándar y, a continuación, haga clic en Aceptar.
De forma predeterminada, se crea Form1.
En el menú Proyecto, haga clic en la opción Propiedades del
proyecto y, a continuación, seleccione la ficha General.
En el campo Nombre de proyecto, escriba DCOMDemo_Cli.
En el campo Descripción del proyecto, escriba DCOMDemo_Cli
Proyecto - Cliente.
En el menú Proyecto, haga clic en Referencias. En la lista de
referencias disponibles, seleccione DCOMDemo_Svr - Servidor.
Coloque un botón de comando en Form1 y cambie el título del botón
por Ejecutar.
Coloque el código siguiente en el evento de clic del botón
En el menú Archivo, seleccione Guardar como y, a
continuación, guarde el proyecto en la carpeta c:\DCOMDemo\Client del cliente.
Presione la tecla F5 para ejecutar el cliente en el IDE y probarlo.
En el menú Archivo, seleccione Generar DCOMDemo_Cli para
compilar el cliente y, a continuación, cierre Visual Basic.
No hay comentarios:
Publicar un comentario