Bonjour

Dans une application windows based, j'essaye d'acceder aux fonctions et event d'un objet com C#.

J'arrive bien a créer le pointer vers l'objet, acceder a ses fonctions et proprietés mais je sèche completement comment
déclarer la fontion delegate de mon objet afin d'intercepter des evenements.

Le .tlh me donne ceci pour la partie event
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
struct __declspec(uuid("4794d615-be51-4a1e-b1ba-453f6e9337c4"))
SC_ComObject;
    // interface _Object
    // [ default ] interface IComOjbect
    // [ default, source ] dispinterface IComEvents
 
struct __declspec(uuid("eca5dd1d-096e-440c-ba6a-0118d351650b"))
IComEvents : IDispatch
{
    //
    // Wrapper methods for error-handling
    //
 
    // Methods:
    HRESULT DeviceEvent (
        _bstr_t SerialNumber,
        long eventType,
        _bstr_t args );
};
J'ai deja ce code la

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
SC_ComComponent::IComOjbectPtr pDevicePtr;
HRESULT hRes = pDevicePtr.CreateInstance(SC_ComComponent::CLSID_SC_ComObject);
	if (hRes != S_OK)
	{
		MessageBox("Error Create instance Com Object");
		CoUninitialize();
	}
Comment je le modifie pour creer la function DeviceEvent et m y abonner

Cordialement