Exibir uma caixa de mensagem em um aplicativo DirectX de tela cheia

8

Em nosso manipulador de asserção personalizado, eu gostaria de exibir uma caixa de mensagem pedindo para ver se essa falha pode ou não ser ignorada. No entanto, quando o jogo DirectX está em tela cheia, não consigo exibir a função MessageBox acima da tela inteira.

Nota: O primeiro parâmetro para MessageBox é o HWND usado para criar o dispositivo e ainda não funciona.

Isso é possível?

Jeff
fonte

Respostas:

3

Sim, você pode estar sem sorte - (embora exista um MessageBoxOptions que permita especificar ServiceNotification, que pode fazer a coisa certa http://msdn.microsoft.com/en-us/library/system.windows.forms .messageboxoptions.aspx )

Normalmente, escrevo minha própria renderização de mensagem nesse ponto (para garantir que você possa usar a declaração em qualquer lugar, no xbox, qualquer que seja).


fonte
O mais próximo que pude chegar é especificar MB_SETFOREGROUND, que funciona 50% do tempo por algum motivo.
21410 Jeff
1

Tente escrever uma GUI do WPF (inicie com um protótipo).
Isso deve resolver o seu problema.
(Renderize para uma superfície DirectX do WPF em tela cheia e não diretamente para a tela.)

Danny Varod
fonte
11
Por que isso foi rejeitado? Eu já fiz isso antes e funciona.
Danny Varod
O WPF requer a criação de uma pilha gerenciada. Nesse caso, eu precisava de uma solução Win32 / DirectX pura.
21410 Jeff
3
Bem, afirme isso na pergunta.
Danny Varod
0

Tanto quanto pude dizer da última vez que tentamos isso, não é possível.

coderanger
fonte