Probleme beim Zugriff auf uccapi.dll com-Schnittstelle C ++
-
18-09-2020 - |
Frage
Ich arbeite an einem Projekt mit dem Microsoft Unified Communications-Client-API; uccapi.dll. Ich verwende auch CodeGear C ++ Builder 2010, nicht visual Studio. Nach der Registrierung der DLL mit RegSVR32 und des Imports als Typbibliothek in C ++ Builder 2010 wurden uccapi_tlb- und uccapi_ocx-Dateien generiert. Wenn ich diese in mein neues Projekt importiert habe, versuche ich den MSDN-Richtlinie zum Erstellen eines Bürokommunikators-Clients, der in der Unterzeichnung in den Bürokommunikationsserver eingerichtet ist.
In diesem Zusammenhang habe ich zwei Fragen:
- Was ist die richtige Art, auf die durch den OCX verfügbaren COM-Schnittstellen zuzugreifen?
Ich habe bisher mehrere Möglichkeiten gefunden, Zugangspunkte zu erstellen, z. B.
generasacodicetagpre.und
generasacodicetagpre.und
generasacodicetagpre.und
generasacodicetagpre.Die drei scheinen sich gut zu funktionieren. Letztere geben mir eine Behauptung fehlgeschlagen: Intf!= 0 Fehler mit 0 × 40000015 Ausnahme. Verwenden eines der drei Top-IDs, auf das ich auf Methoden zugreifen kann, und initialisieren Sie die Platform -Anschnittstelle.
Wenn Sie jedoch eine derselben Taktik ausprobieren, um auf eine andere Schnittstelle zuzugreifen, z. B. iucccceText , iuccurimanager oder
- Verwenden des OLE-Viewers Alle Schnittstellen werden wie möglich angemeldet. Warum sollten nicht alle Co-Creatable-Klassen in der DLL in der Registrierung bei der DLL registriert sein? Und was könnte der Grund sein, warum sie nicht ähnlich handeln?
edit1 von uccapilib_tlb.h:
generasacodicetagpre.Lösung
Dieses Problem wird bereits ausführlich in der Embarcadero Foren .