Windows 8 Layered Windows Over Metro Apps

8

Ich habe eine App, die unter Microsoft Windows mit dem Layered Window Ссылка läuft. Diese App ist so eingerichtet, dass sie eine Deckkraft von 30% hat, immer oben ist und für Ereignisse transparent ist (dh: sie leitet alle Ereignisse an darunter liegende Fenster weiter). Sie können es sich als einen "Bildschirm" vorstellen, durch den Sie Ihren Desktop betrachten. Es wird derzeit verwendet, um eine allgegenwärtige Feedback-Schicht für unsere Benutzer zu sein.

Wir haben versucht, die gleiche App unter Windows 8 auszuführen, und wir haben festgestellt, dass sie im Desktop-Modus wie erwartet funktioniert, aber nichts überlagert das Startmenü und andere Metro-Apps.

Weiß jemand, ob es einen äquivalenten immer im obersten Fenstermodus gibt, der über Metro-Apps und das Startmenü in Windows 8 funktioniert?

    
Eric Webb 27.06.2012, 18:11
quelle

3 Antworten

14

Ja, das ist möglich. Bitte werfen Sie einen Blick auf diese Seite:

Ссылка

Speziell der zweite Beitrag im Kommentarbereich:

  

Das oberste Fenster ist auch von den Einstellungen für die Barrierefreiheit betroffen. Wenn Sie ein Fenster über der Metro möchten, müssen Sie es als Barrierefreiheit deklarieren. Hier sind die wichtigsten Punkte:

     
  1. Die Anwendung muss uiAccess (app.manifest)

  2. anfordern   
  3. Die Anwendung muss die "oberste" Fensterpositionierung bestätigen (entweder in Win32 / SetWindowPos oder WinForms / WPF Topmost -Eigenschaft, programmatisch oder anderweitig)

  4.   
  5. Ohne Änderungen an der Gruppenrichtlinieneinstellung muss diese an einem vertrauenswürdigen Speicherort [ C:\Windows , C:\Program Files , C:\Program Files (x86) ] installiert werden.

         
    • Wenn Sie es an einem beliebigen Ort ausführen möchten, müssen Sie die Sicherheitseinstellung deaktivieren: "Benutzerkontensteuerung: Erhöhen Sie nur UIAccess-Anwendungen, die an sicheren Standorten installiert sind".

    •   
    • Dies entspricht der Einstellung von HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\ValidateAdminCodeSignatures auf 0

    •   
  6.   
  7. Diese Anwendung kann nicht im Debugger ausgeführt werden

  8.   
  9. Wenn es eine .NET-Anwendung ist:

         
    • Das Manifest muss in einen Post-Build-Schritt eingebettet sein

    •   
    • Die Anwendung muss "verzögerte Signierung" haben (was bedeutet, dass sie nicht vom integrierten Debugger ausgeführt werden kann, obwohl Sie Build und Attach - das ist, was Microsoft tut)

    •   
  10.   
  11. Die Anwendung muss mit einem vertrauenswürdigen Zertifikat signiert sein.

  12.   
  13. Das vertrauenswürdige Zertifikat muss auf der vertrauenswürdigen Stammzertifizierungsstelle installiert werden (das ist wichtig! Es darf nicht einfach installiert werden)

  14.   
    
Lai Xue 21.11.2012, 16:16
quelle
1

Führen Sie die Windows-Spracherkennung aus. Es ist ein Top-Fenster, das über Startmenü, Desktop usw. schwebt. So ist es sicher möglich. Ich arbeite an einem Berührungssimulator für Windows 8 und musste diese Funktion implementieren.

Hier sind die Schritte, um dies zu erreichen:

Ссылка

    
Rajnish Noonia 01.05.2013 06:18
quelle
-3

Ich bin fast sicher, dass Sie keine andere App über eine Metro-App legen können. Die neue Metro-Umgebung soll einzelne Vollbild-Apps ausführen (oder zwei, aber nur, wenn sie zur Seite geschnappt werden). Außerdem ist es etwas gefährlich, etwas als Man-in-the-Middle zu agieren, da sie alle Arten von sensiblen Benutzerdaten erfassen können.

Wenn Sie die Eigenschaft "Immer im Vordergrund" eines Fensters festlegen können, bleibt es möglicherweise über dem Startmenü und verschiedenen Metro-Apps. Ich weiß, es funktioniert mit Task-Manager, aber ich habe noch nie mit einer beliebigen App versucht. Ich weiß nicht, dass es für Metro-Apps gut funktionieren würde, da ihre Ereignisse anders sind als bei alten Winform-Apps. Sie müssten sehen, ob Ihr "Bildschirm" Berührungsereignisse durchlässt.

    
Andy_Vulhop 27.06.2012 18:38
quelle

Tags und Links