如何在 Native NT 文本模式下获取图形?
显然,EASEUS Partition Master程序可以显示图形 Windows GUI 启动之前(即,它与 CheckDisk 在启动时运行的同时运行)。
我已经知道的:
这可能需要没有很好记录的函数。这对我来说没问题。
我已经知道如何编译本机 NT 可执行文件,因此请随意从响应中忽略它。
问题:
如何在一切启动之前显示图形? (即您使用哪些函数/库?)
它如何在屏幕上显示格式化和对齐的文本?
我知道 NtDisplayString 能够写入文本,但它无法以格式化方式绘制内容,如下所示。您使用什么函数来复制下面的行为?
Apparently, the EASEUS Partition Master program can display graphics before the Windows GUI starts (i.e., it runs at the same time CheckDisk runs at boot).
What I already know:
This might require not-very-well-documented functions. That's fine with me.
I already know how to compile native NT executables, so feel free to omit that from responses.
Questions:
How can you display graphics before everything has started up? (i.e. What functions/libraries do you use?)
How does it display formatted and aligned text on the screen?
I knowNtDisplayString
is capable of writing text, but it can't draw things in a formatted manner, as you can see below. What function(s) do you use to replicate the behavior below?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我觉得现在回答自己的问题有点傻,但 Ben 的提示帮助我弄清楚了:
它使用一个驱动程序,而该驱动程序又使用
BootVid.dll
中的这些函数:I feel kind of silly answering my own question right now, but Ben's hints helped me figure it out:
It's using a driver, which in turn uses these functions in
BootVid.dll
:也许它使用低级 VGA 调用来切换到图形模式并操作视频内存。
Perhaps it's using low-level VGA calls to switch to graphics mode and manipulate video memory.