Je me rappelle, tu es obligé de passer un pointeur sur un VARIANT qui contient un SAFEARRAY.
Pour les objet COM, le type de param autorisé est très limité.
Voici un example que j'ai tiré d'un de mes programmes:
HRESULT _stdcall GetWBMessage([out] VARIANT *message_i, [in] VARIANT_BOOL refresh_i);
Sa retourne un variant qui contient un liste de chaine de caractère
un morceau du programme listing C++ qui fait cela
LPSAFEARRAY array = SafeArrayCreateVector(VT_UI1, 0, strlen(m_message));
memcpy(array->pvData,m_message,strlen(m_message));
message_i->vt = VT_ARRAY|VT_UI1 ;
message_i->parray = array;
---------------
[:seblamb] Moi aussi je veux grater dédé!!!