COM - Constructor Calls & Static Methods

  • Hi,
    zwei kurze Fragen:

    • Gibt es eine Möglichkeit in AutoIt ein Objekt mittels COM zu erzeugen und dabei anzugeben, welchen Konstruktoraufruf man gerne hätte? Ein Beispiel wäre z.B. der .NET Stack?
    • Gibt es eine Möglichkeit in AutoIt mittels COM eine statische Methode aufzurufen? Also nicht ObjCreate("NAMESPACE.CLASS").METHOD, sondern NAMESPACE.CLASS.METHOD?

    Falls beides nicht mit COM möglich ist, kann mir jemand erläutern, wie ich das Ganze über DllCalls realisieren kann? Wie wird da von außen überhaupt ein Konstuktoraufruf realisiert?

    Danke.

  • Das wird beides nicht möglich sein. Ich denke, du verwechselst .NET mit COM, das ist nicht das gleiche. einige .NET-Objekte werden zwar über COM für nicht-.NEt-Anwendungen bereitgestellt, aber das ermöglicht nicht die Nutzung von Namespaces oder Konstruktoren.

  • Die Objekte aus .NET waren nur ein Beispiel. Es handelt sich eher um eine grundsätzliche Fragestellung, nicht darum ob alles, was in der .NET-Klassenbibliothek definiert ist, auch mittels COM angesprochen werden kann. Um wieder auf das Beispiel zurückzukommen:
    Kann ich mittels COM ein System.Collections.Stack Objekt erzeugen, dass dem überladenen Konstruktor Stack(Int32) der .NET Framework-Klassenbibliothek entspricht? Bzw. welches Tool liefert mir genauere Informationen darüber, welche COM-Objekte und Methoden darauf auf meinem System zur Verfügung stehen?

  • hmm, COM-Objekte haben keine überladenen Konstruktoren oder irre ich mich? Auf jeden Fall kannst du daruf nicht mit AutoIt zugreifen.
    Alle möglichen Objekte bekommst du mit OleView