C++ J'ai quelques interfaces C# exposées à COM:C# serveur COM - Test de
interface IMyInterface
{
IMyListObject[] MyList
{
get;
}
}
interface IMyListObject
{
//properties that don't matter
}
Jusqu'à présent, je teste comment notre ensemble est exposé à COM de C++ et la plupart fonctionne très bien.
Mon problème actuel est à un point J'ai 2 instances de IMyInterface et j'ai besoin de copier d'un MyList à l'autre.
Si je viens d'appeler cela en C++:
myInterfaceB->MyList = myInterfaceA->MyList;
Cela donne le HRESULT de E_POINTER. MyList renvoie un SAFEARRAY *, le code équivalent fonctionne très bien en C#.
Je ne suis généralement pas un développeur C++, comment résoudre ce problème?
Le problème était que j'exposais le tableau en tant que classe au lieu de l'interface qui était exposée à com. Avoir quelques points gratuits pour répondre. – jonathanpeppers