资源简介
Windows下直接写屏c语言驱动源码,找到显卡的显存地址,写入数据,即可在屏幕上显示出来!
代码片段和文件信息
#include
VOID onunload( IN PDRIVER_object Driverobject )
{
DbgPrint(“My Driver Unloaded!“);
}
NTSTATUS DriverEntry( IN PDRIVER_object theDriverobject IN PUNICODE_STRING theRegistryPath )
{
LARGE_INTEGER PhysicalAddress;
PVOID pDisplayMem;
PVOID pTemp;
ULONG i = 0;
ULONG uWidth = 1280; // 分辨率是1280*1024
ULONG uHeight = 1024;
ULONG uLen = 4*uWidth*uHeight;// 4个byte表示一个象素
DbgPrint(“My Driver Loaded!“);
theDriverobject->DriverUnload = onunload;
PhysicalAddress.LowPart = 0xe0000000; //在我电脑上,显卡内存映射的起始地址
PhysicalAddress.HighPart = 0;
pDisplayMem = MmMapIoSpace(PhysicalAddress uLen MmNonCached );
for ( i = 0;i {
if (i {
//填充一个象素
(char)(*(char*)((ULONG)pDisplayMem + i ) ) = 0xFF; //r
(char)(*(char*)((ULONG)pDisplayMem + i + 1) ) = 0xFF; //g
(char)(*(char*)((ULONG)pDisplayMem + i + 2) ) = 0xFF; //b
(char
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1854 2010-11-18 10:04 DirectDisplay.c
----------- --------- ---------- ----- ----
1854 1
- 上一篇:c++基础代码
- 下一篇:linux c++实现https
相关资源
- c++ 批量网页
- C++实战源码-序列求和(入门级056)
- C++实战源码-蝴蝶飞飞飞(入门级600)
- C++实战源码-文字跟随鼠标(入门级
- C++实战源码-整数加减法练习(入门级
- C++实战源码-打地鼠(入门级601).zi
- C++实战源码-向字符串中添加子字符串
- C++实战源码-学生成绩排名(入门级
- C++实战源码-图片马赛克效果(入门级
- C++实战源码-小球下落(入门级053)
- C++实战源码-用星号打印图形(入门级
- C++实战源码-相册屏幕保护程序(入门
- C++实战源码-俄罗斯方块(入门级596)
- C++实战源码-用向量改进内存的再分配
- C++实战源码-计算两个矩阵和(入门级
- C++实战源码-链表类模板的应用(入门
- C++实战源码-输出字符表情(入门级
- C++实战源码-数组冒泡排序法(入门级
- C++实战源码-指针和数组的常用方法(
- C++实战源码-图像浮雕效果(入门级
- C++实战源码-Wave文件播放2(入门级5
- C++实战源码-换肤窗体(入门级276)
- C++实战源码-将Access数据读取到Word文档
- C++实战源码-获得本机的IP地址(入门
- C++实战源码-音频波形显示(入门级
- C++实战源码-使用滚动条显示大幅位图
- C++实战源码-绘制余弦曲线(入门级
- C++实战源码-指针作为函数的参数(入
- C++实战源码-带有函数的结构体(入门
- C++实战源码-利用switch语句输出倒三角
评论
共有 条评论