c++ Keyboardhook über JNI
-
Hallo,
ich möchte dass mein Java Programm weiß, welche tasten der user (global) drückt. Dies kann man so nicht in Java realisieren, nur über ne DLL per JNI.
Ich habe jetzt ein Tuturial für nen Keyboardhook, aber mein Problem ist, dass ich nicht weiß, wie ich das Compiliere für JNI.Also hier ist das was ich Kompilieren möchte:
http://www.codeproject.com/dll/keyboardhook.aspDies soll also in eine DLL, die von Java aufgerufen werden kann.
Ich habe schonmal eine DLL mit JNI eingebunden, dazu haben die Funktionen ungefähr folgendes aussehen:In der .h Datei
... JNIEXPORT jshort JNICALL Java_NewJFrame_getCharNumber (JNIEnv *, jobject, jchar); ...
und dann in der .c datei:
... JNIEXPORT jshort JNICALL Java_NewJFrame_getCharNumber(JNIEnv *env, jobject obj, jchar ch) { return VkKeyScan(ch); } ...
nun steht im Tutorial aber soetwas drin:
LRESULT __declspec(dllexport)__stdcall CALLBACK KeyboardProc(int nCode,WPARAM wParam,LPARAM lParam) { ....... } BOOL __declspec(dllexport)__stdcall installhook() {......}
Ich kenn mich leider kaum mit C++ aus, von daher weiß ich überhauptnicht wie ich das jetzt richtig kompiliere usw... kann mir jemand helfen? EIgentlich will ich nur die Funktion "installhook" aus Java ansprechen, aber wenn ich das "einfach" so mit gcc in Windows kompiliere gibts fehlermeldungen wie sand am meer
danke für die Hilfe..
-
ok hat sich erledigt, habe ein implementation gefunden, daraus bin ich jetzt schlau geworden
für alle die es interessiert:
http://www.velocityreviews.com/forums/t360927-setw ....... otifing-me-on-key-pressed-using-jni-and-c-dll.html
-
Warum hast du die URL kaputt gemacht?
-
das war nicht bewusst
ich probiers nochmal