Ich verstehe die Funktionserklärung nicht



  • Hallo!

    Ich habe wieder eine Frage zu eigentlich gleich 2 Funktionen dich us einer DLL verwenden möchte! Ich komm irgendwie nicht ganz mit der beschreibung der Funktion zu recht.

    So steht es in der Hilfe:
    1. Funktion:
    (Kameramuxer abfragen)
    Funktionskopf: HWDP_rc_t HWDP_has_muxer (BOOL* has_muxer)
    Parameter: *has_muxer besitzt die Syncro einen Kameramuxer?

    2. Funktion:
    (Auswahl des Kameraeingangs)
    Funktionskopf: HWDP_rc_t HWDP_camera_select (HWDP_camera_select_t cam)
    Parameter: cam ausgewählte Kamera(s)

    Mir fehlt da irgendwie die Grundlage das ich verstehe was ich mit der Hilfe machen muss! Klingt blöd aber ich brauche eine Hilfe für die Hilfe! 🙂
    Wie sollten die Funktionen aussehen bzw. wie ist das Grundkonzept davon vielleicht verstehe ich es nach einer kurzen erklärung!

    Vielen Dank im Voraus
    LG, Ronny



  • Ronny0815 schrieb:

    Mir fehlt da irgendwie die Grundlage das ich verstehe was ich mit der Hilfe machen muss!

    Lesen ?

    Wo genau ist Dein Problem, ich habs leider nicht verstanden.



  • HWDP_rc_t - rückgabetyp. Enthält sicherlich Fehler/Success-Code Nachschlagen! Auswerten!

    HWDP_has_muxer - Name der Funktion

    "*has_muxer besitzt die Syncro einen Kameramuxer?" Sicherlich nach dem Aufruf der Funktion. Also wenn du wissen willst, ob die Kamera einen Muxer hat:

    BOOL hasMuxer = NULL;
    HWDP_rc_t retval = HDWP_has_muxer(&hasMuxer);
    if (hasMuxer)
    {
    }
    

    HWDP_camera_select_t cam bekommst du sicherlich aus einer Enumerationsfunktion



  • Knuddlbaer schrieb:

    Ronny0815 schrieb:

    Mir fehlt da irgendwie die Grundlage das ich verstehe was ich mit der Hilfe machen muss!

    Lesen ?

    Wo genau ist Dein Problem, ich habs leider nicht verstanden.

    Lesen meinte ich nicht! 😉

    Sondern ich kann z.b nichts damit anfangen wenn:
    HWDP_rc_t HWDP_has_muxer (BOOL* has_muxer)
    in der Erklärung steht! Mittlerweile habe ich schon wieder ein wenig nachgelsen und verstehe jetzt ein bißchen mehr als vorher.
    Aber ein paar Bsp. wie man solche Funktionen verwendet wären fürs Verständnis halt ganz toll! Kennt Ihr vielleicht eine Dokumentation oder ähnliches in dem ich so etwas finde?

    lg, ronny



  • Hallo peterchen!

    Wenn ich die Funktion wie von dir beschriben aufrufen will bekomme ich die Fehlermeldung: Nicht aufgelöstes externes Symbol _imp_HWDPD_hasMuxer
    Woran kann das liegen?

    Bei der "HWDP_camera_select_t cam" Funktion hast du geschriebn das es eine Enumerationsfunktion ist, ich muss gestehen ich habe keine Ahnung was das ist und habe auch im google nichts darüber gefunden. Hast du vielleicht ein kleines Bsp. dafür oder weißt du vielleicht eine Dokumentation darüber?



  • hallo

    wenn du mit einer dll arbeitest und zwei funktionen verwenden willst, reicht es nicht, den entsprechenden header zu includieren.
    du musst die passende .lib mitlinken.
    projekt->einstellungen->linker... und dort mit aufnehmen.

    dann findet er die implementierung deiner benutzen funktion

    so long



  • Bekommst du die Fehlermeldung vom Linker?

    Mußt noch die Bibliothek einbinden, in der die Funktion implementiert ist (bzw. die Importbibliothek, die sich um's DLL laden usw. kümmert) Das hängt von deinem Compiler ab, sollte aber in der Doku auch mit drinstehen...



  • Danke das war der Fehler!!

    Eine Frage noch wenn ich zwei dll dateien einbinden möchte habe ich ja dann auch zwei .lib dateien zum einbinden aber in den Projekteinstellungen vom Visual Studio kann mann ja nur eine .lib Datei angeben oder?



  • man kann soviele libs angeben wie man will
    machs aber nich über die projekteinstellungen

    lieber rechtsklick im arbeitsbereich->dateien einfügen
    is übersichtlicher

    dritte möglichkeit wär
    #pragma comment(lib,"pfadeinerlib.lib");
    direkt im quellcode


Anmelden zum Antworten