2011-01-21 4 views
0

Je dois retourner tableau bidimensionnel (peut être des chaînes bidimensionnelles) à partir d'un COM développé en C#. Ce COM sera utilisé dans le navigateur (javascript) et un produit ERP appelé Unison. Je suis capable de retourner des types simples comme string, int avec succès mais pas capable de le faire avec des tableaux. Comme je suis nouveau à cette COM, je ne sais pas si je dois spécifier des attributs pour que les types de retour fonctionnent correctement.Retour tableau à partir d'un COM développé en C#

J'ai quelque chose comme MarshalAs et safearrays. Je n'ai pas eu ces choses exaclty.

Toute aide à ce sujet est appréciée.

Merci, Sveerap

+0

Quelle version du CLR utilisez-vous? Si c'est 4 alors vous pouvez en théorie écrire des extensions de navigateur en C#. Si ce n'est pas le cas, vous risquez d'avoir des ennuis si quelqu'un d'autre a la même idée que vous. Les versions 1 et 2 du CLR ne pouvaient pas coexister dans le même processus. –

Répondre

0

Je pense que vous devez attribuer votre méthode C# avec quelque chose comme ça ...

[return: MarshalAs(UnmanagedType.SafeArray, SafeArraySubType=VarEnum.VT_BSTR)] 

Notez que VT_BSTR indique qu'il ya des chaînes dans votre tableau, vérifier le type VARENUM pour d'autres possibilités.

+0

J'ai essayé mais ça n'a pas marché – sveerap

Questions connexes