COM Array als Parameter übergeben



  • Hi

    Ich hab einen in C++ geschrieben COM Server(Dll) in einigen Funktionen werden Arrays per Zeiger übergeben. Wenn ich jetzt aber die Funktion in C# verwenden will erscheint statt einem Array int[] xyz ein ref int xyz.

    Wie kann ich jetzt richtig Arrays als Parameter eintragen?

    PS: ich nutze VS8



  • Dazu musst du wohl die entsprechenden IDL Attribute setzen wie z.B. "size_is" oder "last_is".
    Lies dir die Doku dazu durch, das sollte helfen.

    Im Prinzip teilst du dem COM Client damit über die Type-Library mit welcher Parameter z.B. die Länge des übergebenen Arrays angibt -- oder auch andere Sachen.



  • danke schonmal, ich hab ein paar Sachen gefunden die mir weitergeholfen haben, aber hinbekommen hab ich es noch nicht.


Anmelden zum Antworten