带有dwm和aero的Windows 8上的ScreenCapture

时间:2016-03-07 15:07:57

标签: delphi screenshot aero dwm

我有用Delphi编写的远程辅助应用程序,我需要在不显示我的活动表格的情况下拍摄整个屏幕的一个屏幕截图...如果我设置了AlphaBlend:= true然后当我拍摄de screenshot时,表单隐藏成功,但只有当aero被禁用时,我想知道是否有一种方法来拍摄这个快照而不禁用aero?

ps:隐藏我的表单截取屏幕然后再显示表单不是一个选项!!

我需要一种方法来截取屏幕而不显示我的实际形式而且没有禁用dwm !!!任何人都有一些想法???

WIN7中的成功

image1

在WIN8中失败

image2

在WIN8中暂停WINLOGON.EXE和KILL DWM.EXE工作精细

image3

1 个答案:

答案 0 :(得分:0)

以下适用于我:

procedure TForm2.Button1Click(Sender: TObject);
begin
    Self.AlphaBlend := True;
    Self.AlphaBlendValue := 0;
    try
        Toolkit.CaptureDesktop(Image1);
    finally
        Self.AlphaBlend := False;
    end;
end;

enter image description here

对于另一种技术,您可以看到: