2014-10-05 2 views
0

преобразовать некоторый код из Windows API к аппаратному виртуализированным (VirtualBox) Lubuntu Linux (Ubuntu) 14,04 и хотел добавить кросс-платформенного полноэкранного функциональности. Для этого я использую расширение X12b для XF86. Мой код для изменения режима отображения заключается в следующем (только соответствующая часть)Можно установить полноэкранный режим через приложение на виртуальной машине?

int width = 800; 
    int height = 600; 

    ..some code to make sure the above dimensions are supported by current screen 

    int modesnum; 
    XF86VidModeModeInfo** modes; 
    if (XF86VidModeGetAllModeLines(display,0,&modesnum,&modes)) { 
    for(int x=0;x<modesnum;x++) { 
     if (modes[x]->hdisplay==width && modes[x]->vdisplay==height) { 
      XF86VidModeSwitchToMode(display,0,modes[x]); 
      XF86VidModeSetViewPort(display,0,0,0); 
      break; 
     } 
    } 
    } 

Когда я скомпилировать + запустить выше на моем VM результат не является ожидаемым. Мое разрешение VM: 1366x768 (ноутбук) и запуск его на полноэкранном ВМ, он действительно не меняется на полноэкранный режим, а делает меньший видовой экран 800x600 в центре моего предыдущего разрешения рабочего стола с черным фоном. Я знаю, конечно, что я запускаю ОС на виртуальной машине, и некоторые причуды ожидаются, я просто хотел убедиться, что это просто невозможно, чтобы выпустить чистый полноэкранный режим, а не некоторые поддельные, масштабированные вещи, созданные VM.

Я запускаю одно и то же приложение на другой виртуализированной машине (WinXP), и я получил тот же масштабный полноэкранный режим, так что, полагаю, это невозможно? Я просто хочу проверить, правильно ли установлен мой Linux-код в полноэкранном режиме, и это просто виртуальная машина, которая управляет полноэкранным режимом, предоставляя мне масштабированную версию.

+1

Нет, ваше приложение, работающее внутри виртуальной машины, не может установить полноэкранный режим * физического * хоста. И да, ваше приложение может пойти «в полноэкранном режиме» ... как определено тем, что Virtualbox говорит, что это «полный экран». Ваше виртуальное приложение может использовать полный виртуальный экран. Вот и все :) – FoggyDay

+0

Спасибо :) У меня было подозрение на это, я просто хотел проверить –

ответ

0

Ответ NO .The приложение работает внутри виртуального менеджера может быть установлен на полную screnn на другой host.It может быть полный экран, когда Virtualbox принимает его во весь экран, как @Foggyday упомянутого ..Thanx .. :)

+0

спасибо тоже :) –

Смежные вопросы