DvAPI in php einbinden - separater WAMP-Server

  • Hallo,


    ich würde gerne über einen Webserver (WAMP zum Testen) über php die DvAPI ansprechen, um Kalender-Archive zu lesen und später zu bearbeiten (neue Einträge erstellen).


    (Das ist mein erster Gehversuch mit der DvAPI bzw. überhaupt eine API per php etc. anzusprechen; Kenntnisse im Bereich php, html, Apache... würde ich als ausreichend für das gesteckte Ziel bezeichnen.)


    Leider scheitere ich schon am Einbinden der DvAPI.


    Für den Test habe ich:


    - einen Tobit-Server David 12.x (siteCare)


    - einen Windows 7 Client mit David-Client und installiertem WAMP-Server


    Ich habe schon ein wenig im Forum recherchiert und bin auf folgenden Post gestoßen:


    Archiveinhalt mit PHP anzeigen lassen


    Schreibe ich nun "plump" den Code


    PHP
    $dvApi = new COM("DVOBJAPILib.DvISEApi") or die("Cannot create DVApi object");



    in meine php-Datei, erhalte ich (natürlich) folgende Fehlermeldungen:




    Zitat

    Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `DVOBJAPILib.DvISEApi' in E:\wamp\www\xxx\test.php on line 11
    ( ! ) com_exception: Failed to create COM object `DVOBJAPILib.DvISEApi': Klasse nicht registriert in E:\wamp\www\xxx\test.php on line 11


    Ich habe mir die DvAPI Zip-Datei heruntergeladen und entpackt.


    Aber wie geht es nun weiter?


    - Wo muss ich die Dateien ablegen?


    - wie "includiere" ich die Dateien in php bzw. welche Dateien muss ich includieren und wo ablegen?


    - muss ich den Webserver auf dem Tobit-Server laufen lassen oder klappt das auch in meiner Testumgebung?


    - Muss der Apache unter einem anderen User laufen, damit die API-Einbindung funktioniert (Standarduser ist deamon)?



    Vielleicht kann mir hier jemand "Starthilfe" geben, da ich wie gesagt mit dem Ansprechend der API gar keine Erfahrung habe.


    Den Rest werde ich hoffentlich hinbekommen.


    Danke und Gruß


    Achim

  • Hallo Achim,


    für mich sieht das so aus, dass die API dem WAMPP nicht bekannt ist. Wenn ich das richtig verstanden habe, läuft der Webserver auf dem Win7-Client. Ist dort denn ein david installiert? Wenn nicht solltest du den mal installieren oder probieren die DLL zu registrieren (Eingabeaufforderung (als Admin) -> regsvr32.exe [PFAD DER DLL]).
    Dann sollte es eigentlich funktionieren.
    Auf meinem Client bekomme ich zwar einen Fehler bei


    Code
    $Acc = $dvApi->Logon('','','','','','AUTH') or die("kein Logon")


    aber da ist das COM-Objekt ja bereits vorhanden.


    Gruß, Tobi

  • Hallo Tobi,


    danke für die Antwort.


    ja, es ist auf dem Windows 7 Client ein Tobit-Client installiert.


    nach "regsvr32.exe <pfadzurdll\>dvapi32.dll


    bekomme ich leider immernoch die selbe Fehlermeldung.



    Gruß


    Achim

  • Hallo Achim,


    schade, das war für mich das Naheliegendste. Es gibt da noch die Möglichkeit, dass in PHP die Möglichkeit COM-Objekte zu benutzen nicht aktiviert ist. Ich glaube zwar, dass das eine andere Fehlermeldung war, bin mir gerade aber nict sicher. Du kannst ja sicherheitshalber mal nachschauen, ob in der php.ini der Eintrag


    Code
    [COM_DOT_NET]
    extension=php_com_dotnet.dll


    vorhanden ist.
    Sollte es das auch nicht sein, hab ich auf die Schnelle auch keine Idee mehr.


    Gruß, Tobi

  • Hallo Achim,


    Du schreibst, dass der Standarduser des Apache "deamon" ist. Unter Windows gibt es einen solchen User normalerweise nicht.
    Der User unter dem der Apache läuft, muss als David User eingetragen sein, sonst geht es nicht.



    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

  • Hallo Tobi, Hallo Jens,


    danke für die Antworten.


    also die com-dot-net-extension war es nicht.


    Ich habe den User (zum testen) auf den Domain-Admin geändert und die Funktion überprüft.


    Der Apache läuft jetzt korrekt unter dem Domain-Admin-Account, der Fehler ist aber immernoch derselbe:


    Code
    Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `DVOBJAPILib.DvISEAPI'...
    com_exception: Failed to create COM object `DVOBJAPILib.DvISEAPI': Klasse nicht registriert in E:\w...



    ich denke, ich werde den "wamp" mal direkt auf dem Tobit-Server installieren und dort testen.


    eine neue DVAPI für David (R) gibt es aber nicht, oder?



    Danke


    Achim

  • Hallo Achim,


    die dvapi32.dll ist ja immer aktuell bei einer Installation dabei und wird im Windows Verzeichnis abgelegt, wenn man den Client installiert (darauf hatte Tobit ja schon hingewiesen). Somit hast Du auf diesem System immer die aktuellste DvAPI die es gibt.
    Mit der Maschine auf dem der Webserver installiert ist, kannst Du aber auf den David Server zugreifen, oder?


    Deine Frage bezieht sich eher darauf, ob an den nutzbaren Schnittstellen etwas geändert wurde.
    Das sieht man immer daran, wenn Tobit eine neue Version als separaten Download zur Verfügung stellt (unter Software im TPN).


    Wie genau sieht denn Deine WAMP Umgebung aus von den Versionen her?
    Ich benutze meistens AppServ, aber habe es auch schon mi XAMP genutzt.


    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

  • Hallo Jens,


    der wampserver läuft auf meinem produktiven Arbeitsplatz (also natürlich mit funktionierendem Tobit-Client in der aktuellsten Version: 12.00a - 2738 ).


    Ich benutze den wamp-server 2.4: Apache : 2.4.9 MySQL : 5.6.17 PHP : 5.5.12 PHPMyAdmin : 4.1.14 in 64bit.


    Ich stolpere jetzt erst über 64bit... ist das eventuell das Problem?


    danke


    Achim

  • Hallo Achim,


    die 64 Bit beziehen sich doch auf PHPMyAdmin...?
    Was sagt denn die PHPInfo?


    Auf meinen beiden Servern läuft eine X86 Variante.
    Ich benutze meist http://www.appservnetwork.com/


    Denkbar ist es, dass 64Bit Probleme macht, gibt da auch teilweise Trouble bei .NET.


    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

Jetzt mitmachen!

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