2017-02-17 6 views
0

Wenn Sie den Bildschirm zum Drucken auf Windows drücken, wird der Mauszeiger im Screenshot nicht angezeigt. Ich frage mich, wie es mit welchen Attributen erstellt wird. Ich konnte den Mauszeiger nicht mit SPY ++ und anderen Werkzeugen finden.Erstellen eines Fensters, das nicht im Druckbildschirm angezeigt wird

Ich wollte ein Fenster erstellen, das nicht auf dem Bildschirm erscheint. Bildschirmfoto.

Antwort

0

Der Cursor wird nicht angezeigt, da es sich um ein Legacy-Hardwarefeature handelt. Ihr Computer könnte so einfrieren, dass der Cursor sich bewegt.

Wenn Sie eine direkte X-Swap-Kette erstellen, haben Sie für das Blockieren von Screenshots Schutz-Flags für diesen Zweck. Ich weiß nicht für regelmäßige Hwnd tho.

0

Vor langer Zeit war der Mauszeiger ein spezieller Teil der Hardware, der ein Overlay erzeugte und nicht in den gleichen Videospeicher gerendert wurde wie der Rest des Bildschirms. Auch heute ist es kein Fenster (im Sinne von user32) - es hat kein HWND. Es kann immer noch speziell genug sein, dass es nicht Teil des Renderings ist, oder es kann sein, dass die Druckbildschirm-Funktion den Cursor vorübergehend verdeckt, wenn er den Screenshot aufnimmt.

Ich glaube nicht, dass es einen einfachen allgemeinen Weg gibt, um sicherzustellen, dass Ihr Fenster nicht von einem Screenshot erfasst werden kann. Wenn Ihr Fenster einem "high-integrity" -Prozess gehört, wird es möglicherweise aus einem Screenshot ausgeblendet, der von einem Prozess mit normaler oder niedriger Integrität erfasst wurde. Aber das habe ich noch nie probiert.

Verwandte Themen