Probleme mit hootkeys



  • Ich habe die DLL eingebunden.
    Kann es vielleicht sein das ich sie falsch erzeugt habe?

    Was muss ich eigentlich beim DLL-Experten einstellen und wie kompeiliere ich die DLL?

    EDIT:

    Sorry hab nur die DLL eingebunden und nicht die lib.
    Würde mich aber trotzdem interressieren wie genau ich eine DLL erstelle(siehe oben).



  • Hallo

    der Anfang wird ja in dem FAQ schon erklärt. Wenn der Code der DLL vollständig ist, must du nur wie bei allen andern Projekten auf kompilieren bzw. den Menüpunkt <Projekt> aktualisieren ausführen.

    Bitte beachte noch die Anmerkungen im zweiten Posts des FAQs.

    bis bald
    akari



  • kevka schrieb:

    Was muss ich eigentlich beim DLL-Experten einstellen



  • Indem du mit Datei/neu weitere Dll-Experte ein Dll-Projekt erstellst.
    [edit] viel zu spät[/edit]



  • Hallo

    Du brauchst nur eine normale DLL ohne besondere Optionen, also auch ohne VCL.
    Habe jetzt den Builder nicht parat, also kann ichs dir nicht genauer sagen.

    bis bald
    akari



  • Ich habs jetzt hingekrigt das er alles coompiliert ohne fehlermeldung.

    Wenn ich jetzt jedoch das Programm starte und auf die Tasten hämmere passier nichts.

    Er ruft glaubich nicht einmal das void __fastcall TKeyHookForm::KeyHook(TMessage &Message)
    { ereigniss auf. Ich habe dort mal ne message box reingebaut und die ist auch nicht erschienen.

    MfG kevka



  • Wird denn wenigstens SetHook aufgerufen?



  • Nein die form great Methode wurde nicht aufgerufen.

    Ich hatte ienfach den Quelltext koiert.
    Habe jetzt mal die Sachen entfernt und mit klick im Onjektinspector auf Ereignisse ongreat wieder hinzugefügt jetzt funktioniert das.

    Aber TKeyHookForm::KeyHook wird nicht aufgerufen.

    Und mein Builder gibt ne Warnung aus:
    [C++ Warnung] Unit1.h(21): W8027 Funktionen, die switch enthalten, werden nicht als Inline expandiert

    MfG kevka



  • Die Warnung kannst du ignorieren.
    Geht das Programm in die CheckKey Funktion?
    Geht doch mit dem Debugger durch.



  • Ich habe leider keine ahnung wie ich den debugger bediene
    hab aber eine Zeile eingefügt

    void __fastcall TKeyHookForm::KeyHook(TMessage &Message)
    {
    
    ListBox1->Items->Add("Taste gedrückt");//Überpfrüfen ob überhaupt aufgerufen
      char Key[80];
      GetKeyNameText(Message.LParam, Key, 80);
      ListBox1->Items->Add(Key);
    }
    //---------------------------------------------------------------------------
    

    Kann es sein das der buolder gernicht die Sache erkennt denn:

    kevka schrieb:

    Ich hatte ienfach den Quelltext koiert.
    Habe jetzt mal die Sachen entfernt und mit klick im Onjektinspector auf Ereignisse ongreat wieder hinzugefügt jetzt funktioniert das.

    Die Ereignisse hatte er erst erkann als ich sie über den Objelt Inspector hinzugefügt hatte.



  • Hallo

    hier findest du eine Einweisung in den Debugger. Das solltest du beherschen, sonst wirst du bei halbswegs komplexen Programmen immer Probleme mit Fehlersuche haben.

    bis bald
    akari


Anmelden zum Antworten