CD OPENER/CLOSER

Lordvb Messages postés 57 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 3 décembre 2004 - 1 déc. 2004 à 13:17
Lordvb Messages postés 57 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 3 décembre 2004 - 3 déc. 2004 à 07:32
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/27913-cd-opener-closer

Lordvb Messages postés 57 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 3 décembre 2004
3 déc. 2004 à 07:32
ok. oué donc le même pb doit se retrouver en java ? si j'ai bien compris du moins ... c'est bête pour le framework .NET :/
sinon la source est pratique :) je pense réutiliser 2 fonctions pour rentrer et sortir mon lecteur CD en fesant un clique sur un bouton merci pour les idées et BruNews pour l'information ;)
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
2 déc. 2004 à 18:05
Mais y a rien a soumettre, tant que ce sera du framework ou nimporte quelle autre forme de langage interprete, ce sera impossible. Il y a separation complete des espaces memoire entre chaque processus, faudrait donc comme dit plus haut inserer une copie de virtual machine dans chaque processus, ça n'a aucun sens.
Lordvb Messages postés 57 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 3 décembre 2004
2 déc. 2004 à 17:57
oué donc en gros ca serait une idée à soumettre pour la prochaine version du framework ... vous en pensez koi ?
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
2 déc. 2004 à 14:50
vi
un SetWindowsHookEx ne mettra le hook que pour l'appli elle même
donc là autant passer par les MessageFilter

sinon pour du hook global comme dit BruNews : code natif obligatoire
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
2 déc. 2004 à 11:15
Et moi je confirme tel que ecrit sur la page que tu cites:
"Global Hook Is Not Supported in .NET Framework".
Code NATIF doit se trouver dans une dll, hors cela point de salut.
Ben oui Crazyht, tu vois le systeme mapper tout le framework dans chaque processus ??? c'est le crash assure. N'oubliez jamais que le C# ne produit pas du code executable, il ne le devient qu'a l'execution apres passage dans le framework.
cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 8
2 déc. 2004 à 11:01
Et je confirme mes dires :
http://support.microsoft.com/?kbid=318804
cs_Crazyht Messages postés 1522 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 21 août 2010 8
2 déc. 2004 à 10:58
Brunews une Vraie ??????

Vilain va si c'est pas de l'assembleur Mr rale :)

Bon sinon sache que tu peut faire du SetWindowsHookEx en .NET.

@++
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 déc. 2004 à 16:16
Pour avoir 0 boucle et donc aucun temps CPU consomme inutilement, faudra mettre le code de hook clavier dans une VRAIE dll et appeler SetWindowsHookEx. Le systeme mappera ainsi une copie de la dll dans chaque processus et la fonction n'entrera en service que lorsqu'un event clavier survient. J'en ai fait plusieurs exemples sur cppfrance.
Lordvb Messages postés 57 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 3 décembre 2004
1 déc. 2004 à 16:06
si qq1 connait une solution plus légère (BruNews ?) faudrait la mettre :) ca m'intéresse beaucoup ;)
merci pour la réponse bon programme peut être un peu artisanal mais bon :) j'en aurais jamais fait autant :)
WormkeyP Messages postés 20 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 30 septembre 2010
1 déc. 2004 à 16:03
Réponse a lordvb
Oui mon programme capte les touche lorsqu'il n'a pas le focus. Par contre je ne sais pas si ca fonctionne lorsqu'un autre prog prend le clavier en mode exclusif (je pense a DirectX)

Pour l'écroulement du système, je pens qu'avec 1 appel de fonction (en moyenne) tout les 10ème de seconde on ne risque pas grand chose. Cepandand je suis d'accord qu'utiliser un évenement serait plus "propre". Mais bon je ne conais pas encore cet évenement... (Je veux éviter a tout prix d'avoir a utiliser DirectImput)
Lordvb Messages postés 57 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 3 décembre 2004
1 déc. 2004 à 13:28
oué en gros il renvoit rien si l'utilisateur appuis pas ... enfin ce que je veux dire c'est que c'est pas la pression sur une touche qui "lance" un processus ... oué en effet ca doit bien manger en ressource si ca scanne en permanance l'état du clavier :/
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 déc. 2004 à 13:26
Ceci ne capte rien mais lit l'etat du clavier en boucle continue, ideal pour ecrouler les performances d'un systeme, une pure demo de ce qu'il ne faut jamais faire.
Lordvb Messages postés 57 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 3 décembre 2004
1 déc. 2004 à 13:17
j'ai une ptite question ...
je vois que tu "captes" les touches taper au clavier, ca marche aussi quand ton prog a pas le focus ? ( ca pourrait me servir pour les impr écran dans des formats spécifiques )
Rejoignez-nous