Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
COM - Safearray verarbeiten
Snowwolf3000
myCSharp.de - Member

Avatar #avatar-3109.jpg


Dabei seit:
Beiträge: 142
Herkunft: Süddeutschland

Themenstarter:

COM - Safearray verarbeiten

beantworten | zitieren | melden

Hallo,

ich muss von meinen Programm auf eine COM-Komponente zugreifen. Soweit auch kein Problem. Hab den Verweis hinzufgefügt und die entsprechenden Com-Objekte erstellt. Allerdings liefert mir eine Funktion ein SafeArray zurück (genauer ein zweidimensionales Array) und ich versteh absolut nicht wie ich in C# darauf zugreifen kann. Könnte mir bitte jemand einen Typ geben.

HRESULT GetDescription(
[out] SAFEARRAY(VARIANT) *DESCRIPTION);

Gruß
Snowwolf
private Nachricht | Beiträge des Benutzers
Snowwolf3000
myCSharp.de - Member

Avatar #avatar-3109.jpg


Dabei seit:
Beiträge: 142
Herkunft: Süddeutschland

Themenstarter:

beantworten | zitieren | melden

So konnts selbst lösen. Eigentlich ganz einfach.
Nur falls es jemanden intressiert.


Array temp = (Array)myComObject.GetDescription();
Showmessage(temp.GetValue(0,0));
private Nachricht | Beiträge des Benutzers
svenson
myCSharp.de - Member



Dabei seit:
Beiträge: 8775
Herkunft: Berlin

beantworten | zitieren | melden

Äh, wenn du das COM-Objekt deinem Projekt hinzufügst, bekommst du doch einen .NET-Wrapper. Insofern hast du doch mit dem SafeArray nix mehr zu tun.
private Nachricht | Beiträge des Benutzers
Snowwolf3000
myCSharp.de - Member

Avatar #avatar-3109.jpg


Dabei seit:
Beiträge: 142
Herkunft: Süddeutschland

Themenstarter:

beantworten | zitieren | melden

Ja stimmt schon. Wenn ich das in .net einfüge ist es nur noch ein Objekt von Typ "object" (oder aus Com-Sicht Variant).
Allerdings muss ich es ja wieder in was vernünftiges zurück casten (was ja mein Problem war) und deshalb hab ich halt mit angegeben das es mal ein SafeArray war.
private Nachricht | Beiträge des Benutzers