Une partie de l'exercice que je crée pour utiliser un PC sans moniteur (j'entends par là uniquement utiliser un clavier et une souris et savoir par cœur quels boutons cliquer) nécessite de le désactiver en quelque sorte et de laisser l'étudiant arrêter le processus qui l'a créé. superposition noire ou l'activation d'un script qui réactive le moniteur.
J'ai essayé d'utiliser SendMessage dans Winapi, mais cela ne fait que mettre le moniteur en veille, ce que tout mouvement de la souris ou tout clic sur le clavier désactive. J'ai utilisé ceci:
SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2);
J'ai constaté qu'il existe un registre gérant la détection de nouveaux moniteurs dans Windows sous HKLM> Logiciel> Microsoft> TMM> UseIViewHelper. Soi-disant, si vous le modifiez de 1 à 0, la détection de nouveaux moniteurs cesse mais ne semble pas fonctionner (ou du moins, à ma connaissance).
J'ai essayé d'utiliser MultiMonitorTool de Nir Soffer, mais cela ne semble pas désactiver un moniteur principal, et comme je n'ai qu'un seul moniteur sur le PC, cela n'aide en rien.
Quelqu'un peut-il m'aider avec une idée de la façon de le faire ou peut-être quel outil utiliser?
Merci
Réponses:
J'ai fini cette tâche en utilisant éventuellement quelques astuces. Voici comment je l'ai fait:
Résultat:
Un calque noir sans menu de démarrage, sans crtl + alt + suppr, sans gestionnaire de tâches, sans onglet alt. Pourtant, tout ce que vous faites est enregistré normalement, comme si le moniteur était déconnecté. Soyez prudent lorsque vous faites cela car vous pourriez être bloqué sans option! J'ai créé une autre application qui rétablit tous ces éléments et l'ajoutée aux raccourcis d'exécution. Ainsi, tout en ne voyant rien, je pouvais appuyer aveuglément sur CRTL + R et écrire le raccourci que j'ai créé pour tout désactiver!
PM moi si quelqu'un veut le code source complet.
la source