2016-10-18 52 views
3

我想写一个代码,它能够在引导阶段(当Autochk运行时)捕获屏幕并写入文件。什么是最好的方法?如何在启动阶段捕获屏幕(当Autochk运行时)?

从我所知道的这个阶段只有ntdll.dll可用...所以我们可以使用这个本地API来打开镜像驱动程序来获取屏幕数据。但是,为了从镜像驱动程序获取数据,我们需要尚未提供的GDI库。我该怎么办?

+0

在这一点上,屏幕是否处于文本模式? –

+0

我认为它已经切换到图形模式,但打印内容只是文本 – user3567728

+0

这不是C或C++相关的问题。请不要标记它们。 –

回答

0

主要问题是Windows在当时运行Windows代码,而不是你的。 (磁盘)驱动程序可能有一个例外,但是因为您正在讨论调用Win32 DLL并不重要。你不能从驱动程序调用GDI。此外,为什么你的司机会被首先打电话?驱动程序对OS请求作出反应以处理特定事件。

+1

我们可以在Autochk之前注册一个在启动时运行的应用程序,这个应用程序将fork另一个进程并退出当前。所以Autochk和其他应用程序可以运行。另一个进程将定期调用驱动程序来获取屏幕数据并保存到磁盘。 – user3567728