2012-06-27 4 views
8

J'ai une application qui fonctionne sous Windows 7 en utilisant la fenêtre Layered de Microsoft http://msdn.microsoft.com/en-us/library/ms997507.aspx. Cette application est configurée pour avoir une opacité de 30%, elle est toujours en haut, et elle est transparente aux événements (c'est-à-dire qu'elle transmet tous les événements aux fenêtres en dessous). Vous pouvez le considérer comme un "écran" sur lequel vous regardez votre bureau. Il est actuellement utilisé pour être une couche de rétroaction omniprésente pour nos utilisateurs.Windows 8 Windows en couches sur les applications Metro

Nous avons essayé d'exécuter la même application sur Windows 8, et notons que cela fonctionne comme prévu en mode bureau, mais rien ne recouvre le menu Démarrer et les autres applications de métro.

Est-ce que quelqu'un sait s'il existe un mode équivalent toujours en mode fenêtre supérieure qui fonctionne dans les applications métro et le menu Démarrer de Windows 8?

+1

Pas possible, les applications Metro exécutent sur leur propre bureau protégé. –

+0

Metro est incroyablement nerfed comparé au bureau traditionnel; l'interaction entre les deux est presque impossible, ni souhaitable. – Luke

+0

Merci à tous. Un autre point de données, le clavier à l'écran de Windows semble être omniprésent (même sur le menu de démarrage et d'autres applications de métro). Certes, il peut avoir des permanences spéciales dans les fenêtres ... –

Répondre

14

Oui, c'est possible. S'il vous plaît jeter un oeil à cette page:

http://blogs.microsoft.co.il/blogs/pavely/archive/2012/05/16/windows-8-topmost-vs-topmost.aspx

Plus précisément, le deuxième poste dans la section des commentaires:

La fenêtre supérieure est également affectée par les paramètres d'accessibilité. Si vous voulez une fenêtre au-dessus de Metro, vous en avez besoin pour déclarer l'accessibilité. Voici les points clés:

  1. L'application doit exiger uiAccess (app.manifest)

  2. L'application doit faire valoir « supérieure » positionnement de la fenêtre (dans Win32/SetWindowPos ou WinForms/WPF propriété de Topmost, programme ou autre)

  3. sans modifier le paramètre de stratégie de groupe, il doit être installé à un emplacement de confiance [C:\Windows, C:\Program Files, C:\Program Files (x86)].

    • Si vous voulez être en mesure de l'exécuter à partir d'un emplacement arbitraire, vous devez désactiver le paramètre de sécurité: « Contrôle de compte d'utilisateur: élever uniquement les applications UIAccess installées dans des endroits sûrs ».

    • C'est la même que la mise en HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\ValidateAdminCodeSignatures-0

  4. Ladite application ne peut pas être exécuté dans le débogueur

  5. Si c'est un.l'application NET:

    • Le manifeste doit être incorporé dans une étape de post-construction

    • L'application doit avoir « signature différée » (ce qui signifie qu'il ne peut pas être exécuté à partir du débogueur intégré, mais vous pouvez construire et attacher - c'est ce que Microsoft fait)

  6. L'application doit être signée avec un certificat de confiance.

  7. certificat Ledit confiance doit être installé à l'autorité de certification racine de confiance (ce qui est important! Il ne faut pas tout simplement installé)

-3

Je suis presque sûr que vous ne pouvez pas avoir d'autre application superposant une application Metro. Le nouvel environnement Metro est conçu pour exécuter des applications uniques en plein écran (ou deux, mais uniquement si elles sont accrochées). De plus, permettre à quelque chose d'agir en tant que man-in-the-middle est un peu dangereux, car ils peuvent capturer toutes sortes de données utilisateur sensibles. Ceci étant dit, si vous pouvez définir la propriété "Toujours visible" d'une fenêtre, elle peut rester sur le menu Démarrer et diverses applications Metro. Je sais que cela fonctionne avec le Gestionnaire des tâches, mais je n'ai jamais essayé avec une application arbitraire. Je ne sais pas si cela fonctionnerait bien pour les applications Metro, cependant, en raison de leurs événements différents des anciennes applications winform. Vous devriez voir si votre "écran" permet aux événements tactiles de passer à travers.

1

Exécuter les fenêtres de reconnaissance vocale. C'est une fenêtre supérieure qui flotte sur le menu Démarrer, le bureau, etc. C'est donc possible à coup sûr. Je travaille sur un simulateur tactile pour Windows 8 et j'avais besoin de mettre en œuvre cette fonctionnalité.

Voici les étapes pour y parvenir:

http://www.pixytech.com/rajnish/2013/05/windows-8-topmost-window/

Questions connexes