2011-10-28 3 views
0

Я использую полноэкранное приложение, которое использует функции DirectDraw для отображения, и оно отлично работает. Теперь я хочу показать другое приложение со своим окном, но другое приложение скрыто за полноэкранным приложением Direct Draw при запуске. Я могу получить доступ к другому приложению, только когда я закрываю приложение fulldraw full screen.Отображение другого приложения поверх приложения полного экрана directdraw

Можно ли переключиться на другое приложение из приложения с прямым рисованием в полноэкранном режиме во время работы? Есть ли способ показать окно другого приложения поверх полноэкранной функции DirectDraw, а затем возобновить работу после закрытия другого окна?

Спасибо и привет

ответ

1

Я посмотрел на это некоторое время назад и обнаружили, что способ его сделать, это подключить к DirectDraw API, и вставить свой собственный рендеринг там. В принципе, после того, как другое приложение завершено, выкладывая сцену и собираемся представить бэкбуффер, ваш код прыгает и делает свое дело. Я никогда не работал, но это похоже на подход. Я не думаю, что есть «легкий» способ сделать это, хотя.

Еще один вариант - посмотреть, может ли другое приложение работать в полноэкранном оконном режиме. В принципе, никаких границ, заполняющих весь экран, но не технически полноэкранного/эксклюзивного режима. Если он поддерживает это, вы можете сделать самое верхнее окно, которое будет отображаться поверх него.

+0

Извините, что забыл упомянуть, что другое приложение не использует DirectDraw, оно использует обычные вызовы GDI. Любая идея, если это возможно, если другое приложение создает нормальное окно или отображает окно сообщений? Сейчас они скрыты за первым приложением. – Harish

+0

Если вы просто используете полноэкранное окно с вызовами GDI, попробуйте сделать свое окно самым верхним. См. Http://msdn.microsoft.com/en-us/library/windows/desktop/ms633545(v=vs.85).aspx для вызова SetWindowPos. Вы можете указать аргумент, чтобы сделать ваше окно «самым верхним», и оно будет отображаться поверх полноэкранного окна. – Nerdtron

+0

@ Nerdton, я попробовал SetWindowPos и ​​другие API, но все же я не могу увидеть другое окно. Пока первое приложение (с использованием DirectDraw) является полноэкранным, я не вижу другого окна приложения (используя GDI) – Harish