Demander à l'hôte de capturer certaines touches dans VirtualBox

48

J'utilise VirtualBox sur Ubuntu 9.10 avec Windows XP comme système d'exploitation invité.

C'est assez ennuyant que lorsque je suis dans l'OS invité - je ne peux pas basculer de bureaux virtuels (espaces de travail) sur l'hôte (Ubuntu) en appuyant sur Control+ Alt+ ( Left| Right| Up| Down) car VirtualBox capture ces combinaisons de touches.

Est-il possible de désactiver la capture au clavier pour certaines combinaisons de touches?

Alexander Smirnov
la source

Réponses:

27

Bien qu'il existe des raccourcis de clé d'hôte qui activent certaines fonctions de VirtualBox (par exemple, Host Key+ Pqui met en pause l'invité), je ne connais aucun moyen de configurer VirtualBox pour envoyer des raccourcis de clé d'hôte au système d'exploitation hôte.

Cependant, étant donné que VirtualBox a une édition open source , il peut être possible de modifier le code source pour ajouter cette fonctionnalité. Vous pouvez accéder au code source de VirtualBox via le lien de téléchargement .

Entre-temps, vous pouvez utiliser la clé d'hôte pour libérer le clavier du contrôle de l'invité VirtualBox. Par défaut, la clé de l'hôte est définie sur Right Ctrl. Vous pouvez voir la clé d'hôte actuelle dans la fenêtre de la machine virtuelle:

texte alternatif

Appuyez simplement sur la touche hôte une fois pour libérer la capture du clavier. Après cela, votre système d'exploitation hôte verra vos pressions de touche. Alors, voici votre flux de travail:

  1. Appuyez sur la touche hôte et relâchez-la. Votre système d'exploitation invité ne capture plus les pressions de touche.
  2. Appuyez sur Ctrl+ Alt+ (touche fléchée) pour changer d'espace de travail ou de toute autre clé que vous souhaitez envoyer au système d'exploitation hôte.
Quack Quack
la source
Ce serait bien ... Mais [Ctrl gauche] + [Alt] ne fonctionne pas trop ... Cela ne dépend pas du tout de la clé de l'hôte, VBox enregistre toutes les pressions.
Alexander Smirnov
Je suis désolé, j'ai mal interprété votre question. Je pensais que vous aviez un invité Ubuntu sur un hôte XP. mis à jour la réponse.
Quack Quichote
1
Ok, merci, j'espère que je trouverai le temps pour une petite enquête d'ajouter cette fonctionnalité
Alexander Smirnov
@quack Gaff S'il y en a un où personnaliser le code source. serait-il facile de reconstruire vmware pour l'utiliser? sur un macos?
momomo
15

Cette question est ancienne, mais j'ai trouvé une meilleure solution qui n'existait probablement pas à l'époque.

Vous pouvez désactiver "Clavier de capture automatique" dans la fenêtre du gestionnaire -> menu Fichier -> Préférences -> Entrée:

entrez la description de l'image ici

Cela désactive complètement la saisie automatique du clavier, ainsi les liaisons de clé du gestionnaire de fenêtres lui sont directement transmises.

Dans ce mode, la touche 'hôte' a l'effet inverse: elle permet de récupérer plutôt que de la désactiver.

dequis
la source
9
L'inconvénient est que vous devez maintenant vous rappeler d'activer la capture au clavier avant d'utiliser des éléments tels que Alt + Tab. Virtualbox a vraiment besoin d'un moyen de mapper et de désactiver les raccourcis clavier à l'intérieur de l'invité.
stackular
1
Fonctionne très bien! Je n'arrive pas à comprendre pourquoi ce paramètre n'est pas spécifique à la machine.
Franck Dernoncourt
Il s’avère que c’est en fait une très bonne solution si vous utilisez la machine invitée pour exécuter le code que vous développez sur la machine hôte, même le code GUI. Si vous ne maximisez pas l'interface graphique sur la machine invitée et ne laissez pas le terme / cmd pour exécuter le code ouvert, vous pouvez survoler / cliquer avec le curseur de la souris sur les fenêtres que vous souhaitez saisir, comme vous le feriez normalement pour les fenêtres hôte peut être désactivé dans Windows!). Alt + Tab bascule entre les fenêtres VirtualBox et hôte, et les raccourcis clavier permettant de changer d'espaces de travail fonctionneront probablement (les miens sont configurés en tant que Super + flèche et Super + nombre, je ne peux donc pas tester Ctrl + Alt + flèche).
Michael Scheper le
5

Si vous appuyez une fois sur la touche de l'hôte (Ctrl droit), une combinaison de touches apparaît pour permettre à la combinaison de touches suivante d'accéder à la machine hôte.

Pour moi, cela signifie que je peux appuyer sur les touches Ctrl droit, Libérer, puis sur les fenêtres + Ctrl gauche + Gauche pour changer de bureau.

Curtis
la source
1
Ce n'est pas réellement désactiver la capture au clavier pour certaines combinaisons de touches, cette réponse serait mieux comme un commentaire.
N'enracinez pas ici svp ...
Confirmé de travailler pour la combinaison opposée: hôte Windows 7 + invité Ubuntu 16.04.
Jpaugh
1

Je l'ai très bien géré en définissant la clé hôte comme Winclé! Sous Windows 10, vous avez besoin de Ctrl+ Win+ Arrowspour changer de bureau, et définir Wincomme clé d’hôte vous permet d’exécuter la combinaison directement sur le système d’exploitation hôte, tout en capturant sur la machine virtuelle l’autre combinaison comme Ctrl+, Cetc.

Andrea
la source
0

Dans Windows 10 Pro 1803 (avec une machine virtuelle Windows 7 dans VirtualBox), appuyez sur la touche de l'hôte, puis sur le raccourci clavier "hôte" qui fonctionne également pour moi. Cela me permet un nombre minimal d’actions clavier uniquement pour changer de bureau, à partir d’une VM "capturée", selon la suggestion de Curtis.

Il semble que si la clé de l'hôte inclut la clé Windows, le menu de démarrage de Windows 7 a tendance à apparaître avant de passer en mode de clavier "hôte". , je peux alors utiliser les raccourcis à deux mains pour changer de bureau.

Donald Klopper
la source
0

J'ai eu le même problème et je ne pouvais le résoudre qu'en

  • désactivant d'abord le Auto Capture Keyboard(qui était activé par défaut), dans le File / Preferences / Inputmenu de VirtualBox
  • redémarrer la VM
  • permettant à nouveau Auto Capture Keyboard
  • redémarrer la VM

Je suppose qu’il existe un bogue dans VirtualBox qui ignore les paramètres initiaux.

Remarque: J'ai redémarré après avoir désactivé l'option, la première fois que j'ai essayé de résoudre le problème, pensant que c'était la solution (car elle est souvent suggérée). Cela n'a pas fonctionné, je l'ai réactivé et c'était très bien. Je ne suis donc pas sûr que cette première étape de redémarrage soit entièrement nécessaire.

RedGlyph
la source