CoCreateInstance
-
Hallo Leute,
ich programmiere zwar derzeit in VB.Net aber meistens konnten Ihr mir eher weiterhelfen als die VB-Leute. Hier mein Problem:
Ich programmiere eine Anwendung mit Directshow. Zuerst möchte ich einen GraphBuilder anlegen. Das Objekt versuche ich mit der, aus C++ bekannten Funktion CoCreateInstance anzulegen. Leider bekomme ich als "result" immer zurück, dass ein falscher Datentyp übergeben wurde. Könnt Ihr mir vielleicht weiterhelfen??
Hier mein Code:
Private pGraphBuilder As DirectShowLib.IGraphBuilder //Deklaration des Interfaces // CoCreateInstance-Funktion holen Private Declare Function CoCreateInstance Lib "ole32.dll" ( _ ByVal rclsid As String, _ ByVal pUnkOuter As Long, _ ByVal dwClsContext As Long, _ ByVal riid As String, _ ByRef ppv As Object) As Long //Klassenid und Interfaceid festlegen Dim CLSID_FILTERGRAPH As New System.Guid("{E436EBB3-524F-11CE-9F53-0020AF0BA770}") Dim IID_IGraphBuilder As New System.Guid("{56A868A9-0AD4-11CE-B03A-0020AF0BA770}") //Befehl abschicken result = CoCreateInstance(CLSID_FILTERGRAPH.ToString, 0, CLSCTX_INPROC_SERVER, IID_IGraphBuilder.ToString, pGraphBuilder)
Liebe Grüße .. Drea
-
Mit einiger Wahscheinlichkeit wird es dann wohl erst funktionieren, wenn du den richtigen Datentyp übergibst...
Bye, TGGC