Exception beim Einfügen von Addressbucheintrag via C#

  • Hallo!


    Wir versuchen unser Exchange-Addressbuch automatisch mit dem von Starface abzugleichen. Dazu schien uns die aktuelle C# Integrations-API via .NET Remoting gut geeignet (siehe Demo-Projekt von Wolfang in Entwicklung c# .net).


    Die Demo-Anwendung funktioniert auch prima, aber nun wollte ich mit folgendem Code mal einen Testeintrag im Addressbuch anlegen:
    Jetzt habe ich zum Test mal folgenden Codeschnipsel ausgeführt:



    Dabei schleudert der UCC Client aber eine NullReferenceException zurück, scheinbar bei dem Versuch, das Addressbuch-Tag zu deserialisieren:


    Code
    NullReferenceException
       bei ReadUccAddressbookAttributeFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString[] , XmlDictionaryString[] )
       bei System.Runtime.Serialization.ClassDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
       bei System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator reader, String name, String ns, Type declaredType, DataContract& dataContract)
       bei System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator xmlReader, Int32 id, RuntimeTypeHandle declaredTypeHandle, String name, String ns)
       bei ReadArrayOfUccAddressbookAttributeFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString , XmlDictionaryString , CollectionDataContract )


    Ich habe schon einige Variationen durchprobiert (z.B. default-UccAddressBookTag benutzen, null übergeben, Array der Größe 0 übergeben), ohne Erfolg.


    Könnte es sein dass die UccWrapper.dll (ich verwende Version 6.4.3.159 aus dem gelinkten Thread) nicht mehr mit dem aktuellen UCC Softphone kompatibel ist? Oder evtl. noch ein Problem (ich glaube die UccAddressBookTags sind erst kürzlich eingebaut worden)?

  • Hallo MeWald


    Zitat


    Könnte es sein dass die UccWrapper.dll (ich verwende Version 6.4.3.159 aus dem gelinkten Thread) nicht mehr mit dem aktuellen UCC Softphone kompatibel ist? Oder evtl. noch ein Problem (ich glaube die UccAddressBookTags sind erst kürzlich eingebaut worden)?


    Der STARFACE UCC-Client kommt immer mit seiner entsprechend Kompatiblen UccWrapper.dll


    Sofern der UCC-Client Standardinstallationspfad verwendet wurde befindet sich diese im: "C:\Program Files\STARFACE\UC Client\UccWrapper.dll"


    MfG


    Fabian

  • Danke, gut zu wissen. Ich habe mein Experiment nochmal mit der in meinem Programmverzeichnis liegenden UccWrapper.dll (6.5.0.284) wiederholt.


    Die NullReferenceException tritt auch damit auf. Also liegt es schonmal nicht an abweichenden Versionen:


    Code
    System.NullReferenceException
       bei ReadUccAddressbookAttributeFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString[] , XmlDictionaryString[] )
       bei System.Runtime.Serialization.ClassDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
       bei System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator reader, String name, String ns, Type declaredType, DataContract& dataContract)
       bei System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator xmlReader, Int32 id, RuntimeTypeHandle declaredTypeHandle, String name, String ns)
       bei ReadArrayOfUccAddressbookAttributeFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString , XmlDictionaryString , CollectionDataContract )
       bei System.Runtime.Serialization.CollectionDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
       bei System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator reader, String name, String ns, Type declaredType, DataContract& dataContract)
       bei System.Runtime.Serialization.XmlObjectSerializerReadContext.InternalDeserialize(XmlReaderDelegator xmlReader, Int32 id, RuntimeTypeHandle declaredTypeHandle, String name, String ns)
  • Hallo zusammen, ich bekomme den gleichen Fehler in der aktuellen Version 6.6.


    Selbst wenn ich einen vorhandenen Kontakt öffne, bearbeite und speichern möchte...


    Need help, Danke :)


    Gruß Joe

  • Hallo Joe,


    seit einiger Zeit blockiert Windows 10 den UCC Client, wenn er ein WCF TCP Binding öffnen möchte. Ich habe für die 6.6.0.219 deshalb als Fallback wieder das Named Pipe Binding aktiviert. Du solltest auf jeden Fall den 6.6.0.219 Client und die darin enthaltene UCC Wrapper Dll verwenden.


    Ansonsten müssest Du mal den Code zeigen, damit ich das reproduzieren kann.



    Gruß Wolfgang

  • Hi Wolfgang,


    Danke für die Info...


    Ich habe es jetzt geschafft, eine Adresse zu öffnen und sie zu speichern. Aber das anlegen funktioniert noch nicht... Hier mal der wesentliche Code:



    Dann die Verbindung:


    Vlt. kannst Du ja sehen, wo der Fehler liegt...


    Danke & Gruß Joe

  • Hallo Joe,


    ja, ich konnte das Problem reproduzieren. Für den Client selbst fiel es nicht auf, da dieser die WCF Schnittstelle nicht verwendet. Outlookconnector und Fax benutzen die WCF-Schnittstelle.


    Ich habe Dir als Private Nachricht einen Link für eine Hotfix-Version gesendet. Damit ist das Problem aus meiner Sicht behoben. Du kannst dann so was schreiben:



    und dann




    Gruß Wolfgang

  • Hallo Wolfgang,


    vielen Dank für Deine Hilfe... Nach Installation lief alles super.


    Vielen Dank für die schnelle Antwortzeit.


    Gruß Joe

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!