【问题标题】:How to take a screenshot in WP8?如何在 WP8 中截屏?
【发布时间】:2013-06-13 10:26:40
【问题描述】:

如何制作完整的 WP8 截图? “完成”是指“包括应用程序栏、状态栏、消息框和键盘”。

我尝试过的事情:

在 WP7 中工作的 GDI API(GetDC、CreateCompatibleDC、BitBlt),结果 - CreateCompatibleDC 或 CreateDCW 返回 NULL,GetLastError 说“找不到指定的过程”。而且,WP8似乎只有一个HDC,即0x00dc00dc,所以不可能有离屏GDI DC。

从 ShellChrome.dll 调用ScreenCapture 和 SaveApplicationScreenShot – 应用程序停用,没有其他反应。

D3D11Device1::GetImmediateContext, ID3D11RenderTargetView::OMGetRenderTargets – OMGetRenderTargets 返回 NULL。

还有其他想法吗?

我不需要通过市场认证,因此不受支持/未记录的 API 也可以。

【问题讨论】:

  • Beytan,该方法不会捕获任何非 Silverlight UI 元素(应用程序栏、消息框、键盘、状态栏)。
  • 我期待着,需要确定。那好吧。
  • 您可以按 Windows 键和电源按钮,或使用模拟器屏幕截图工具,但据我所知没有编程方式。
  • Paul,我需要程序化方式。碰巧,您知道哪个进程或模块处理 Win+Power 组合吗?我生活在一个为合法目的进行逆向工程完全合法的国家..
  • 即使有办法破解 Win+Power 组合,您也不会通过商店提交/验证过程获得这样的应用程序,那么有什么意义呢?如果是您的应用,您正在拍摄您的图像,您会知道 ApplicationBar 应该是什么样子,因此如果您真的需要它,您可以将其添加到以编程方式捕获的图像中。

标签: windows-phone-8 windows-phone screenshot c++-cx


【解决方案1】:

在 WP8 及以下版本中,如果不在 TCB 中运行(需要破解的图像)并加载不附带任何 SDK 的库,则无法捕获整个屏幕。

【讨论】:

  • 我已经创建了一些不附带任何 SDK 的库(例如 ext-ms-win-gdi-dc-create-l1-1-0.lib)。你知道做我想做的 API 吗?
  • 另外,你的“和下”是错误的:在 WP7、GetDC、CreateCompatibleDC、BitBlt 工作得很好,这里是 XAP:forum.xda-developers.com/showthread.php?t=1316199
猜你喜欢
  • 1970-01-01
  • 2023-04-04
  • 1970-01-01
  • 2011-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-10
相关资源
最近更新 更多