Besoin de cobayes pour une anomalie

Résolu
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 24 févr. 2007 à 11:41
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 25 févr. 2007 à 18:54
Ma demande va, je le sais, paraître assez curieuse, mais ceux qui voudront bien tenter cette expérience contribueront peut-être à comprendre (ou à "cerner") ce qui se passe derrière tout celà.

On va commencer par mon enronnement personnel de travail

OS : Windows 2000 Pro
Version VB : VB5 Entreprise

ATTENTION (pour le cas où les choses se passeraient comme sur ma machine)
Sauvegardez et fermez vos travaux en cours avant de faire et de lancer la suite

projet :

Une form avec sa propriété Keypreviw = True et ce seul code :

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  If KeyCode = 18 Then SendKeys "%{ENTER}"
End Sub

Maintenant,
1) lancer le run de ce projet depuis l'IDE (pas l'exe)
2) appuyer, dans cet ordre, sur les touches (demeurées pressées) CTRL + ALT + DEL

Celà conduit, chez moi, à l'apparition du dialogue habituel du gestionnaire de tâches, mais en même temps, à un blocage total de ma machine et donc à la nécessité d'une interruption forcée (par l'interrupteur) puis à un redémarrage.

Si certains vopulaient bien essayer dans leur environnement et nous dire si ce phénomène se produit également chez eux, ils ouvriraient sans doute la voie à une réflexion intéressante.
Comme ce phénomène n'est constaté chez moi qu'en utilisant le Run de l'IDE, VB a sans aucun doute une responsabilité dans cette affaire. (Aucun blocage en lançant l'exe obtenu de la compilation)

Merci d'avance à ceux qui voudront bien se prêter à cette expérience et rendre compte de ce que celà aura entraîné dans leur environnement.

19 réponses

Utilisateur anonyme
24 févr. 2007 à 12:20
Salut,

J'ai essayé, rien ne plante chez moi (je suis sous xp)
Chez moi, Ctrl+Alt+Suppr me fait ouvrir l'info de session.

Pour mieux testé, j'ai fait :
If KeyCode = 18 Then
  SendKeys "%{ENTER}"
  Beep
End If

J'ai le Beep en continue quand j'appui sur Alt, mais les combinaisons Ctrl+Maj+Escape ou Ctrl+Alt+Suppr me débloque tout.






__________
Kenji
3
vercomax Messages postés 547 Date d'inscription mercredi 28 juillet 2004 Statut Membre Dernière intervention 11 septembre 2013 2
24 févr. 2007 à 12:53
pas de problème pour moi, apparition de info sesson et pas de blocage
3
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
24 févr. 2007 à 13:57
Salut à tous,

Idem, rien ne se passe chez moi, aucun blocage...
Win Xp Sp2 et Vb6 Sp5

A+
Exploreur
3
Utilisateur anonyme
24 févr. 2007 à 13:59
Avec un DoEvents, j'ai une erreur 28 : Espace de pile insuffisant.
Sinon, je suis sous XP Home SP2 (Casy, c'est ma config qui fait que Ctrl+Alt+Suppr m'amène à l'info de session) et VB6 SP6.






__________
Kenji
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 févr. 2007 à 14:10
Il semblerait qu'il y est vraiment une spécificité, car le keyCode 18 correspond à vbKeyMenu donc à une touche Menu.

Personellement je n'ai jamais vu cette touche sur un clavier, donc ça vient bien je pense du fait que le système intercepte le ctrl+alt+supp pour afficher la page d'ouverture de session donc plus exactement de l'affichage de cette page.

pour info, normalement c'est supp que devrait intercepter keydown et supp correspond au keyCode 46

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
24 févr. 2007 à 14:53
alt est bien l'appel du menu
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 févr. 2007 à 15:19
Effectivement, bien vu PCPT.

Alors j'ai refais le test, chez moi. Avec ctrl+alt+supp, rien s ce n'est l'ouverture du gestionnaire de tache.

Par contre avec Alt seul, blocage de l'appli. Dès qu'elle pert le focus, elle se débloque mais lide reste un peuu pertubé. Il suffit de rappuyer sur Alt pour tout remettre en ordre

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
3
vercomax Messages postés 547 Date d'inscription mercredi 28 juillet 2004 Statut Membre Dernière intervention 11 septembre 2013 2
24 févr. 2007 à 11:51
vb5 ou vb2005 ?
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
24 févr. 2007 à 11:53
Bonjour vercomax,

VB5

Mais rien n'empêche de faire cette expérience avec VB2005 également (bien au contraire)


N'oublie surtout pas (pour le ca où) de sauvegarder et fermer tes travaux en cours, je te le rappelle
0
vercomax Messages postés 547 Date d'inscription mercredi 28 juillet 2004 Statut Membre Dernière intervention 11 septembre 2013 2
24 févr. 2007 à 12:46
c'et quoi 'le run' en vb2005
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
24 févr. 2007 à 13:00
Un grand Merci à vous deux.
Charles, je ne sais toujours pas si c'est un problème d'OS différentes ou de versions VB différentes.

Autre curiosité découverte grâce à toi :
Si chez moi (VB5 + Win 2000 pro) j'ajoute le beep ===>> même phénomène mais avec, en plus, necessité de réinitialiser le Desktop au redémarrage !

Avec un peu de chances, passera par là un possesseur de VB5 (car je crois que c'est VB5 et non l'OS qui, finalement, est le véritable responsable)


 


Je laisse le sujet ouvert car je crois vraiment qu'il y a quelque chose d'intéressant "derrière"
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 févr. 2007 à 13:41
Charles, t'as quelle version d'XP ???

Chez moi (XP Pro), ctrl+alt+supp, m'ouvre le gestionnaire de tache.

Aucun bug, aucun problème de blocage, le beep n'es envoyer qu'une fois. Le tout avec VB6

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
24 févr. 2007 à 13:51
salut,
idem que casy
XP pro SP1 VB6 sp6, beep désactivé dans les param windows donc pas testé avec...
peut-être que le ctrl+alt+entree (celui de sendkeys) amène des soucis pour Win2K ou VB5
ou un dérivé de ctrl+arrêtdefil mais mettant VB et Win dans les choux
as-tu essayé avec un doevents avant le senkeys?

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
24 févr. 2007 à 14:45
Chez moi

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  MsgBox KeyCode
End Sub

donne bien 18 si on appuie sur ALT
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
24 févr. 2007 à 15:45
peut-être une piste... jmfmarques, ta form contient-elle un menu?
le alt puis entrée (pas +) ouvre le menu par défaut, ou ouvre le menu system à défaut...

il est possible que l'appli gèle sur le down en continu si un menu est déroulé (peut-être invisible) puisque modal (comme la fonction popup)

simple supposition
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
24 févr. 2007 à 16:55
Rebonjour;

D'abord un très grand Merci pour ce que vous avez bien voulu expérimenter

Il doit définitivement y avoir un problème inhérent à l'IDE de VB

Pour répondre à PCPT, d'abord : non : aucun menu ni même le mondre contrôle sur la Form

Mais vien maintenant le plus curieux :
en n'utilisant que la touche ALT, avec mon IDE VB : j'obtiens presque ce qu'obtient Casy, mais dans l'ordre suivant :
1) blocage apparent
2) perte des touches numériques
3) impossibilité de déclencher maintenant le gestionnaisre (par CTRL + ALT + DEL)
4) mais si j'appuie à nouveau sur ALT, il m'est cette fois possible de déclencher le gestionnaire de tâches par CTRL + ALT + DEL

Une espèce de "compromis", donc, entre ce qu'a Casy et ce que j'obtenais en allant, dès l'étape 1) à l'emploi de CTRL + ALT + DEL.

Je me suis donc demandé si je n'avais pas la berlue et ai recommencé, mais cette fois-ci en allant directement à CTRL + ALT + DEL ===>>> et là : plantage total sans possibilité aucune de "rattrapage" par un nouvel appui dsur ALT ...

Ma conclusion : oui, celà doit avoir quelque chose à voir avec la gestion des menus, comme vous l'avez entrevu. Et (l'IDE seul étant concerné par ce phénomène) je pense que l'IDE de VB5 et celui de VB6 ne réagissent pas de la même façon. Je ne crois pas que l'OS soit quant à lui concerné (encore que... si l'IDE sous-classe... tout demeure possible)

Bon... que dire et que faire ?
- Je valide les réponses qui ont apporté quelques éclaircissements
- Je remercie à nouveau

- et explique comment j'en suis arrivé à cette "expérimentation" : ayant réussi ce matin, en réponse à un anglophone, à faire un petit "truc" permettant de prendre en considération la frappe de la conjugaison de 2 lettres (pas de toutches autres que "normales") , par exemple G + K, il m'est idiotement venu l'idée folle que je pourrais tenter d'appliquer cette méthode à CTRL + ALT + DEL... sans succès, bien entendu... autre que, en "trifouillant" et m'amusant, que le plantage fortuit dénoncé..
Voilà !
Il faut m'enfermer..

Ceci dit : si vous avez besoin du truc (là j'y suis parvenu) permettant de faire reconnaitre la frappe de X + Z, je le mets là bien volontiers.

MERCI ENCORE MILLE FOIS..
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
25 févr. 2007 à 00:31
Bonsoir Jmfmarques,

Je souhaiterai "profiter du truc", si tu ne vois pas d'inconvénient bien sur..

Bonne soirée et bonne nuit !!

A+
Exploreur
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
25 févr. 2007 à 08:36
Bonjour Exploreur,

Ce n'est que la mise en oeuvre d'une petit mécanisme.

Voilà :

Private touche1 As Boolean, touche2 As Boolean


Private Sub Form_Activate()
   Me.KeyPreview = True
End Sub


Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
   controle_touche "C", "D", KeyCode  ' c'est ici que l'on décide des touches réactives (ici C + D)
End Sub


Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
    touche1 = False
    touche2 = False
End Sub


Private Sub controle_touche(T1, T2, KC)
   If touche1 And touche2 Then
      touche1 = False
      touche2 = False
   End If   If UCase(Chr(KC)) T1 Then touche1 True   If UCase(Chr(KC)) T2 Then touche2 True
   If touche1 And touche2 Then MsgBox T1 & "+" & T2 & " sont présenteùent enfoncés"
End Sub
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
25 févr. 2007 à 18:54
Bonsoir à tous

Merci Jmfmarques pour le truc...

A+
Exploreur
0
Rejoignez-nous