sunwill_chen
驱动小牛
驱动小牛
  • 注册日期2007-08-19
  • 最后登录2009-09-28
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望130点
  • 贡献值1点
  • 好评度97点
  • 原创分0分
  • 专家分0分
阅读:4163回复:10

DrvEnablePDEV函数由谁调用?

楼主#
更多 发布于:2007-09-07 15:16
为什么我找遍了显卡驱动程序中的代码,都没有人调用DrvEnablePDEV函数,因为我想查看下在调用该函数时传入的参数值, 知道的老大请指点下,感谢!
sunwill_chen
驱动小牛
驱动小牛
  • 注册日期2007-08-19
  • 最后登录2009-09-28
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望130点
  • 贡献值1点
  • 好评度97点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-09-07 19:24
找了下资料说是GDI调用的,这里的GDI是指底层的驱动程序吗?
sunwill_chen
驱动小牛
驱动小牛
  • 注册日期2007-08-19
  • 最后登录2009-09-28
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望130点
  • 贡献值1点
  • 好评度97点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-09-08 09:57
又找了下GDI好象是一个子系统,  不知道这个能不能修改呢?
ps: 驱网的回复率太低了吧,我的发帖90%得不到解答
coolboylmk
驱动牛犊
驱动牛犊
  • 注册日期2006-11-09
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望71点
  • 贡献值0点
  • 好评度59点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-09-09 11:04
The driver must support certain DrvXxx functions for GDI to call.
                                                                                                          ---引自MSDN

楼主要理解显示驱动的结构,我们编写的驱动只是提供一系列DrvXXX的函数供系统调用。你要得到DrvEnablePDEV的参数,进到函数里不就有吗?不明白你想干什么。

现在显示板块不景气,高手又不屑一顾,楼主不必抱怨,有问题自己多研究下吧。
sunwill_chen
驱动小牛
驱动小牛
  • 注册日期2007-08-19
  • 最后登录2009-09-28
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望130点
  • 贡献值1点
  • 好评度97点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-09-09 15:56
你好,感谢你的回复呵。
“你要得到DrvEnablePDEV的参数,进到函数里不就有吗?”我的意思是指我想知道GDI到底是以怎样一个方式传递参数值给DrvEnablePDEV函数,感觉就是GDI会去读去注册表中分辨率的数据,然后确定传给DrvEnablePDEV的分辨率值, 但是刚装完驱动,如果没有在桌面->属性->设置  这边改下分辨率,在注册表中是不会有与分辨率相关的项的,这时GDI到底会传递什么分辨率值给DrvEnablePDEV呢,我可以知道在我的这个系统的GDI上是传640x480当成默认的分辨率,我现在就是想了解下那边是直接设置这个值还是从哪里得到这个值,也想看看能不能修改这个值。

恳请回复,多谢!
zheng5735
驱动牛犊
驱动牛犊
  • 注册日期2006-03-10
  • 最后登录2012-12-05
  • 粉丝1
  • 关注0
  • 积分939分
  • 威望127点
  • 贡献值0点
  • 好评度95点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-09-11 16:48
DrvEnablePDEV是由DrvEnableDriver调用的,分辨率的修改是系统再根据用户修改分辨率时,重新加载显卡驱动传递的,想想那下黑屏。。。
就知道了。
sunwill_chen
驱动小牛
驱动小牛
  • 注册日期2007-08-19
  • 最后登录2009-09-28
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望130点
  • 贡献值1点
  • 好评度97点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-09-12 21:11
DrvEnablePDEV是由DrvEnableDriver调用的??

不太对吧,DrvEnableDriver中都没有出现DrvEnablePDEV?能否说下具体是怎么调用的,我看资料说是GDI,感觉用GDI来解释比较说得过去,感谢。
zheng5735
驱动牛犊
驱动牛犊
  • 注册日期2006-03-10
  • 最后登录2012-12-05
  • 粉丝1
  • 关注0
  • 积分939分
  • 威望127点
  • 贡献值0点
  • 好评度95点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-09-13 11:01
是GDI调用DrvEnableDriver创建设备,并设置DrvEnablePDEV等函数对应本设备的函数回调地址。。。

CreateDC---  DrvEnableDriver ----DrvEnablePDEV

好好看看DDK例子
coolboylmk
驱动牛犊
驱动牛犊
  • 注册日期2006-11-09
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望71点
  • 贡献值0点
  • 好评度59点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2007-09-14 16:58
何必这么麻烦,你写个程序,安装完驱动后调用ChangeDisplaySettingsEx ()把分辨率改成你想要的不就行了吗?
morningtea
驱动牛犊
驱动牛犊
  • 注册日期2006-05-23
  • 最后登录2009-03-13
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望19点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-09-21 11:02
是这样子吗?
angel_dolphin_i
驱动中牛
驱动中牛
  • 注册日期2007-08-16
  • 最后登录2011-09-06
  • 粉丝1
  • 关注0
  • 积分289分
  • 威望444点
  • 贡献值1点
  • 好评度552点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2007-09-22 17:20
?????????????????????????????
游客

返回顶部