mizhael
驱动牛犊
驱动牛犊
  • 注册日期2004-08-04
  • 最后登录2004-08-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:944回复:0

如何得到GDIINFO?驱动程序有关的DrvEnablePDEV?

楼主#
更多 发布于:2004-08-08 05:14
请大虾指点:

我需要编程得到关于显卡和显示器的一些信息GDIINFO,ulPhysicalPixelCharacteristics等等.

请问如何先把driver调入,然后调用DrvEnablePDEV,
来得到GDIINFO里的信息?

不知道何处有相关的例程。

非常感谢。


  
      
 
 
wowocock 大侠说了:

做显卡过滤驱动,拦截ZWSETSYSTEMINFORMATION,然后判断是否为过滤显卡,设置过滤函数即可。


但是我还是不明白:
 
请问这个过滤是怎么做的呢?我真的不太明白阿。看了半天DDK也没有一点希望。DDK好像都是教人怎么写driver的,不过我不要写driver,我只要读取GDIINFO的由DrvEnablePDEV得到的那个数据。。。

请问这个过滤的sample例程何处有阿?

非常感谢。



发现以下的可能方法:具体应该怎么办呢?
以下两种可能的做法应该怎么进行?
1。A GDI filter is a kernel mode display driver that
loads the real display driver. It follows the rules of
a kernel mode display driver.It loads the real display driver in its
DrvEnableDriver routine which is the standard exported
function driver. EngLoadImage/EngFindImageProcAddress in DDK doc.
Since display driver is coupled with a video miniport
driver, one also needs to modify the miniport's INF to
load the GDI filter instead of the real display driver. See video miniport INF file section in DDK DOC.

2。"better approach might be to write a wrapper driver -- a driver that
has all the entry points of a video or printer driver. In your
wrapper driver, your Enable() will call the real driver's Enable(),
which when called the first (or is it the 2nd?) time, returns GDIINFO.
You then modify the GDIINFO returned by the real driver's Enable() and
return from your Enable()."

还请各位大侠指点。愿付报酬。非常感谢。
游客

返回顶部