jjzjj

Screenshot

全部标签

c++ - 如何截取第二屏幕监视器的屏幕截图?

我需要获取第二个屏幕监视器的屏幕截图。我找到了一种制作屏幕截图的简单方法,但仅适用于主显示器的屏幕截图。这是代码:#includevoidScreenShot(char*BmpName){HWNDDesktopHwnd=GetDesktopWindow();RECTDesktopParams;HDCDevC=GetDC(DesktopHwnd);GetWindowRect(DesktopHwnd,&DesktopParams);DWORDWidth=DesktopParams.right-DesktopParams.left;DWORDHeight=DesktopParams.bott

windows - 哪些 Windows (C++) 屏幕捕获库符合我的要求?

我准备外包我们应用程序的屏幕捕获功能,因为这不是我们的核心业务,而且我花了太多时间试图让我们的代码完成我需要的所有事情。我想是时候请专家了。以下是我的要求,按重要性降序排列。有没有人有使用满足大部分或所有这些要求的任何商业或免费图书馆的经验?必须在WindowsXP及更高版本中工作。(但不是Win95/98/Me。)VisualC++2005兼容,可以从我的代码中触发屏幕截图。最好是静态库,但DLL或COM对象也可以。我不希望使用独立的EXE,因为有些用户会试图篡改我们的应用程序,而且我认为拥有一个明显的单独屏幕截图EXE会使这变得太容易了。必须能够截取多个监控系统的完整屏幕截图。(最

c++ - 在 Windows 8.1 中捕获 PC 的整个屏幕截图

我正在制作一个截取整个屏幕截图的C++程序。我面临着一个很大的问题。当我运行该程序时,它只截取控制台屏幕的屏幕截图,而不是整个桌面。HDCScreen=CreateDC(L"DISPLAY",NULL,NULL,NULL);HDCCapture=CreateCompatibleDC(Screen);intwidth=GetDeviceCaps(Screen,HORZRES);intheight=GetDeviceCaps(Screen,VERTRES);LPBYTElpcapture;BITMAPINFObmiCapture={{sizeof(BITMAPINFOHEADER),wid

python - Pyautogui 屏幕截图。它去哪儿了?如何保存以后查找?

我正在从AlSweigart的youtube视频中学习如何将无聊的事情自动化。我开始截图了。他并没有在他的视频中真正解释,所以我测试了一些东西。我发现它会截取整个桌面的屏幕截图,但我不知道它们去了哪里。我只能在搜索整个计算机时找到它,但我不知道如何将它放入文件夹中。基本上我问的是如何存储图像并找到那些由pyautogui.screenshot()函数拍摄的图像。我现在不打算将它用于任何事情,我只是想知道如何去做。我去了pyautogui网站,但没有找到有关在哪里可以找到以及如何保存屏幕截图的任何信息。预先感谢您的宝贵时间! 最佳答案

c++ - 如何在 Windows 上捕获桌面,以便它可以同时捕获 directX 和正常呈现的屏幕部分?

简单的例子-一方面我们看到相机通过标准软件渲染“输入”,另一方面(标记为“输出”)通过一些directX东西渲染(至少在我看来是这样):那么windowsapi或DirectXapi提供了什么功能来捕获这种混合场景? 最佳答案 TightVNCServer可以做到,你可能想看看他们在做什么。简单浏览一下他们的源代码,他们似乎正在创建一个镜像主屏幕的虚拟屏幕。不过,具体来说,看看CreateCompatibleDC和CreateDIBSectionAPI 关于c++-如何在Windows上

windows - 我如何确保使用 Perl 的 Imager::Screenshot 截取特定窗口的屏幕截图?

我使用Imager::Screenshot在我的Perl代码中,它确实有效并截取了屏幕截图。现在,每次浏览器都在不同的位置打开,这意味着开始的x和y位置可能不一样。有没有办法从浏览器而不是桌面起始位置开始截屏。如果不是(与编程无关)是否有办法将浏览器设置为仅以全尺寸打开,无论它是从什么程序打开的。单击图标时由用户打开,或由Perl使用Win32::OLE打开模块。 最佳答案 您可以使用Win32::GuiTest::FindWindowLike查找与浏览器关联的窗口句柄并将其指定为screenshot:#!/usr/bin/envp

windows - 使用任务计划程序通过自动屏幕捕获获取空白(黑色)屏幕截图

我正在尝试解决一个软件错误,在该错误中,我们认为某个应用可能不会在每次调用时都启动。为了对此进行测试,我创建了一系列计划任务来启动应用程序、截取屏幕截图,然后关闭应用程序。这些任务都是通过.bat文件运行的。除屏幕截图外,一切正常。当作为计划任务运行时,屏幕截图中的.jpg始终显示黑框。如果我正常执行.bat文件,屏幕截图看起来没问题。我正在使用nircmd发送屏幕捕获命令并将其保存到文件夹中。我使用的命令如下:nircmd.exesavescreenshot"C:\FilePath\"~$currdate.MMddyyyy$-~$currtime.HHmmss$.jpg我正在使用Wi

windows远程桌面不渲染

我在远程桌面上运行一个Windows应用程序。它实际上有一个IE浏览器,我有时会调用Screenshotsapi。当session连接到远程桌面时,屏幕截图会成功,并捕获有关浏览器中真实内容的图片。但是当没有session连接时,会捕获黑色图片。我猜此时渲染停止了。有没有办法让它在没有session连接的情况下呈现? 最佳答案 解决方法:usetscon将断开连接的RDPsession移动到本地控制台。这将再次启用渲染。 关于windows远程桌面不渲染,我们在StackOverflow

windows - 隐藏窗口截图

我需要截取当前隐藏窗口的屏幕截图,而无需将焦点放在该窗口上。我在这里看到了一个帖子:WindowscreenshotusingWinAPI我从未使用过这种方法,因此非常感谢任何建议。我希望能够在Windows或OSX中执行此操作,是否可以在OSX中执行?它不一定需要使用相同的语言或跨平台,但当然,这是一个加号:)。 最佳答案 我会研究让窗口将自己绘制到位图中的可能性,而不是尝试用屏幕截图来拍摄它的照片。这可能是一种使窗口最小化无关紧要的方法。类似WM_PRINT的东西或WM_PRINTCLIENT信息。我怀疑这实际上是问您链接到的原

c# - 确保导出的 JPEG 小于最大文件大小

我目前有一个应用程序可以截取演示者桌面的屏幕截图,然后通过自定义协议(protocol)将其广播给观众。为了使图像传输速度足够快以达到每秒2-3张图像的帧速率,我需要确保图像大小始终小于~300KB。我将C#用于演示应用程序,它通过以下过程将屏幕截图编码为JPEG。我担心的是,使用静态压缩设置时图像质量可能会有很大差异。如果我的应用程序捕获我的屏幕,当我使用VisualStudio全屏时图像输出将约为200KB,但如果我最小化我的屏幕并显示我的桌面背景,它将约为400KB。我可以将编码过程放入循环中,并不断减小图像大小,直到字节数组的大小小于300KB,但这似乎是一个乏味的操作。我可以