我有一个C#应用程序,可以防止屏幕捕获,但我想禁用“黑屏”。
下面是我的代码:
[DllImport("user32.dll")]
public static extern uint SetWindowDisplayAffinity(IntPtr hWnd, uint dwAffinity);
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
SetWindowDisplayAffinity(this.Handle, WDA_MONITOR);
}
怎样才能使它失效?
1条答案
按热度按时间zvokhttg1#
使用SetWindowDisplayAffinity,要从捕获中排除窗口,传递
WDA_EXCLUDEFROMCAPTURE
或WDA_MONITOR
作为参数,要撤消(包括在捕获中),传递WDA_NONE
:下面的屏幕截图显示了窗口包含在捕获中:
下面的屏幕截图显示窗口被排除在捕获之外: