none
Tapi3Lib mit .NET 4.0 RRS feed

  • Frage

  • Hallo zusammen,

    wir nutzen neuerdings Visual Studio 2010 und habe soeben eine kleine Anwendung von .NET 2.0 in .NET 4.0 portiert.
    Diese nutzt die TAPI 3 Schnittstelle.

    Nur leider funktioniert diese Zeile Code nicht mehr :

    tobj.ITTAPIEventNotification_Event_Event += new TAPI3Lib.ITTAPIEventNotification_EventEventHandler(cn.Event);
    

    Genau genommen gibt es "ITTAPIEventNotification_Event_Event" in der Klasse TAPI nicht mehr.
    Durch was wird dieses ersetzt?

    Vielen Dank

    Gruss

    Manuel

    Dienstag, 31. Mai 2011 12:31

Alle Antworten

  • Hallo Manuel,

    hat sich die TAPI-Library im Zuge der Portierung auch geändert? Andere Version etc.? Ansonsten könnte ich mir vorstellen, das als "Target framework" in den Projekteigenschaften momentan ein "Client Profile" ausgewählt ist.

     

    Gruß,
    Philip 

    Dienstag, 31. Mai 2011 12:45
  • Hallo Manuel,

    1. TAPI 3 ist eine COM Komponente, das hat eigentlich nichts mit NET 4.0 zu tun. Die Methode existiert immer noch, aber inzwischen in Version 3.1. Vielleicht hast Du inzwischen die Komponente upgedatet. Überprüft das doch einfach mal. Ansonsten binde die Komponente einfach mal neu ein. Vielleicht ist ja auch etwas bei der  Migration schiefgegangen

    2. Bei deiner Codezeile fehlt die abschließende Klammer

     

    Schöne Grüße

    Oliver

    Dienstag, 31. Mai 2011 12:52
  • Vielen Dank für die Antworten.

    Richtig, die Komponente habe ich von den COM-Komponenten hinzugefügt.
    Dort drin finde ich nur "Microsoft TAPI 3.0 Type Library" mit der Version 1.0 von c:\Windows\system32\tapi3.dll


    In einem Forum habe ich gefunden das man in den Eigenschaften des Verweises auch die Eigenschaft "Interop-Typen einbetten" auf False setzen kann.
    Somit konnte ich die zum Beispiel die TapiConstants nutzen. Die ohne diese Veränderung angemerkt wurde mit

    "... kann nicht eingebettet werden. Verwenden Sie stattdessen die entsprechende Schnittstelle."

    Wenn ich die Zeile, die aktuell das erfolgreiche Erstellen verhindert, auskommentiere, erhalte ich beim starten folgende Fehlermeldung:

    Die Datei oder Assembly "Interop.TAPI3Lib, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" oder eine Abhängigkeit davon wurde nicht gefunden.

    Es wurde versucht, eine Datei mit dem falschen Format zu laden.

     

    Mein Targetframework ist nicht im "Client Profile".

    Vielen Dank euch zwei :)

    Gruss

    Manuel

    Dienstag, 31. Mai 2011 13:45