2016-07-05 20 views
0

Ich habe ein Programm, das alle 100ms Screenshots erstellt und sie an einen Client sendet. Im Moment kann ich nur ein bestimmtes Fenster wie Get a screenshot of a specific application anzeigenWie man eine Anwendung mit einem Screenshot "durchschaut"

Aber ich möchte ein bestimmtes Fenster ausblenden.

Was ich nicht tun:

  • Ändern der Opazität von einem Programm
  • Machen Sie ein bestimmtes Fenster schwarz; Der Client muss immer noch in der Lage sein zu sehen, sagen wir den Browser dahinter.
  • Verbergen Sie es; muss der Ausrichter

Nur Bild, das ein Host hat sehr wertvolle Informationen in Excel immer in der Lage sein, alles zu sehen, kann es nicht zu sehen. Aber gleichzeitig muss der Client immer den Browser (oder irgendein anderes Programm, nicht nur eines, wie ich es jetzt habe) dahinter sehen.

+3

Es gibt keine Möglichkeit, dies Sie den Screenshot zu der Zeit zu tun. Sie müssten das Bild anschließend bearbeiten, um das Rechteck des unerwünschten Fensters zu verdecken. Angesichts Ihrer Vorbehalte würde ich sagen, das ist einfach nicht möglich. –

Antwort

1

Die folgende funktionieren könnte:

  1. Von der Frage verknüpft, Blick auf the highest voted answer und PrintWindow() verwendet Screenshots von einem einzigen Fenster zu erhalten. Mach das für alle Fenster außer dem Fenster, das du verstecken willst.

  2. Determine the Z-Order der Fenster

  3. Merge the bitmaps with transparency

+1

Meinst du, alle Fenster außer einem zu greifen und dann alle zusammenzuführen? Ich werde es ausprobieren! – Alexander

+0

@prograyylmaoer: oh ja, natürlich würdest du das ausschließen. Die Antwort wurde aktualisiert. –