2016-06-19 16 views

Antwort

0

COM/MIDL wissen nichts von .NET-Klassen wie Task, da die Technologien unterschiedlich sind und COM älter als .NET. Sie beabsichtigen, dass ein Server eine Task erstellt und ausführt, während ein Client (möglicherweise in einem anderen Prozess, möglicherweise kein .NET-Programm) Zugriff auf die Aufgabe hat? Dann sollte eine COM Schnittstelle zu der Aufgabe mit zugeordneten Proxy- und Stub-Implementierungen für das Marshalling von Methodenargumenten und Ergebnissen zwischen Prozessen vorhanden sein. Informieren Sie sich über COM und "COM Iterop". Außerdem muss Ihre IDL die Definition einer solchen Schnittstelle definieren oder import.

Je nach Bedarf kann die vorhandene Schnittstelle IAsyncResult ausreichen. Es wird von Task implementiert und es wird ComVisibleAttribute(true) markiert. Seine COM-Typ-Definitionen scheinen in mscorlib.tlb zu sein. Möglicherweise müssen Sie die entsprechende IDL mithilfe von OleView.exe generieren.