donc, je suppose que je dois le faire en C++, quelqu'un est au courant de ce problème? je recherche déjà partout et j'ai trouvé quelques articles sur le crochet de clavier sur windows ce, windows mobile est ce windows, n'est ce pas? une autre question: quel compilateur gratuit, ide pour Windows Mobile je pourrais utiliser?crochet clavier global dans Windows Mobile 5 ou supérieur (plate-forme smartphone), comment?
Répondre
SetWindowsHookEx n'est pris en charge sur aucune version de WindowsCE (lire: Mobile). Les hameçons en général ne sont pas supportés, en fait. Toutefois, si vous souhaitez utiliser des API sans support/non documentées, vous pouvez extraire SetWindowsHookEx de coredll.dll et l'appeler comme vous le feriez sur Windows. Vous voulez WH_KEYBOARD_LL, qui dit est 20.
un peu googler Vous aurez réellement besoin de sortir des pointeurs vers les méthodes suivantes: SetWindowsHookEx, CallNextHookEx et UnhookWindowsHookEx.
Votre code ressemblera à (ce qui est non testé):
//myHook.dll
LRESULT myLowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
//You'll need to pull a reference to CallNextHookEx out of coredll as well
if(nCode < 0) return CallNextHookEx(nCode, wParam, lParam);
KBDLLHOOKSTRUCT data = *((PKBDLLHOOKSTRUCT)lParam);
//Do something with data
return CallNextHookEx(nCode, wParam, lParam);
}
//Main Code, which ignores all the nasty function pointers you'd ACTUALLY have to use to do this
...
HHOOK hook = SetWindowsHookEx(WH_KEYBOARD_LL, pMyLowLevelKeyboardProc, hMyHookDll, 0);
...
//Some point in the future
UnhookWindowsHookEx(hook);
Je suggère fortement contre cette cependant. Je doute beaucoup que ce code continuera à fonctionner pour toutes les futures versions de Windows Mobile. Envisager une autre façon de réaliser tout ce que vous êtes réellement après.
Je ne peux pas dire que j'ai des recommandations pour les compilateurs gratuits ou IDE. Tout autre que Visual Studio pour C/C++ me cause toujours beaucoup de frustration. Je pense que c'est plus un reflet de mes habitudes qu'un commentaire sur d'autres outils.
http://www.naresh.se/2009/09/08/getkeyboardstate-mousehooks-not-available-in-windows-mobile/
Suivez l'URL ci-dessus. Il a le code requis pour fonctionner sur Windows Mobile et Windows CE et a aussi une bonne explication ainsi qu'un forum pour discuter plus en avant sur ...
Oublié de dire que le code est en C# comme requis par d'autres utilisateurs ...
- 1. Crochet de clavier global sous Linux?
- 2. Windows Mobile 5 Smartphone Erreur DNS pour les fichiers html locaux
- 3. Connexion Bluetooth Windows Mobile 5/6
- 4. Windows Mobile 5 - Sortie de l'application Handle
- 5. Entrek CodeSnitch avec Windows Mobile 5/6
- 6. Windows Mobile 5 contrôle de bouton SDK
- 7. ComboBox de style smartphone sur la plateforme PocketPC?
- 8. Comment faire apparaître le clavier dans Windows Mobile?
- 9. Crochet du clavier ... n'obtenant pas les caractères majuscules ou minuscules
- 10. Puis-je utiliser le kit de développement Windows Mobile 6 pour développer Windows Mobile 5 Applications
- 11. Modification de la disposition du clavier sous Windows Mobile
- 12. Portage d'une application Windows Mobile 2003 Compact Framework sur un smartphone
- 13. Graphiques ou graphiques dans Windows Mobile 6
- 14. Bloquer l'utilisation du téléphone sur un appareil Windows Mobile 5
- 15. Puis-je capturer des événements de clavier Windows Mobile PIE?
- 16. Comment écrire une valeur dans le registre sur un périphérique Windows Mobile 5?
- 17. C# comment déterminer si un smartphone est un appareil standard ou professionnel?
- 18. Windows Mobile - package mp3 avec mon application
- 19. Windows Mobile - Autoriser l'entrée d'un e-mail dans TextBox
- 20. Comment remplacer ou personnaliser l'écran de verrouillage de Windows Mobile?
- 21. Windows Mobile Technologies
- 22. Déterminer Smartphone/Non-Smartphone pour php
- 23. Comment activer le menu dans Windows Mobile par programmation
- 24. Comment obtenir Processus dans Windows Mobile
- 25. comment se déconnecter dans l'application Windows Mobile?
- 26. Gardez une console Windows Mobile App Course
- 27. Comment obtenir DataTemplate.DataTrigger pour vérifier supérieur ou inférieur à?
- 28. Comment obtenir un objet supérieur (fenêtre ou page) dans WPF?
- 29. Comment: Prendre des photos dans Windows Mobile sans CameraCaptureDialog?
- 30. Interface graphique tactile dans Windows Mobile
puis-je utiliser ceci avec C# et appel dll natif? – StoneHeart
Sur le bureau, il est possible d'installer des hooks WH_KEYBOARD_LL en utilisant du code managé pur. Vous devrez expérimenter pour voir si la même chose est vraie pour Windows Mobile. Mes exemples sont en C, car ils sont les «plus susceptibles» de travailler; comme indiqué, il s'agit d'une opération non prise en charge. –
je fais un outil sur Windows Mobile, il peut fonctionner en arrière-plan et la clé de capture que l'utilisateur a pressé (dans le monde entier), alors je peux le faire en C#? – StoneHeart