heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
阅读:9482回复:25

mirror driver怎样与应用程序通信

楼主#
更多 发布于:2007-02-28 11:54
我想将DrvCopyBit收到的信息发到应用程序里,应该怎么做?是图形驱动直接和应用程序通信,还是先发到微端口中,然后微端口在和应用程序通信?
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-02-28 13:18
在图形驱动里,能否接收到IRP_MJ_xxx?
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-02-28 15:43
我加了DrvEscape,为什么总是调不进去?


ULONG DrvEscape(
    IN SURFOBJ  *pso,
    IN ULONG  iEsc,
    IN ULONG  cjIn,
    IN PVOID  pvIn,
    IN ULONG  cjOut,
    OUT PVOID  pvOut)
{    
    DISPDBG((1, "DrvEscape"));
    return 1;
}

在gadrvfn中加{        INDEX_DrvEscape,                                (PFN) DrvEscape                            },

请高手帮忙看看,是不是我哪个地方没写对.
fulcrum
驱动牛犊
驱动牛犊
  • 注册日期2006-11-27
  • 最后登录2007-04-10
  • 粉丝0
  • 关注0
  • 积分130分
  • 威望14点
  • 贡献值0点
  • 好评度13点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-03-04 20:29
我也在做同样的开发,关注中~~~
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-03-05 11:25
自己顶一下.
问题解决了,主要是自定义的iEsc必须在保留范围内,我设成8000以上就可以了.
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-03-05 14:49
有搞mirror driver的吗?大家一起讨论讨论吧.
我的msn: heihu.mts@gmail.com
rageliu
驱动小牛
驱动小牛
  • 注册日期2006-06-01
  • 最后登录2008-08-22
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望221点
  • 贡献值0点
  • 好评度209点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-03-05 16:40
刚决定玩玩mirror,大家多指教
潜心修炼DDK
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-03-07 14:57
搞清楚了,图形驱动和微端口之间用EngDeviceIOControl()通信.
liaoanhui
驱动牛犊
驱动牛犊
  • 注册日期2006-01-12
  • 最后登录2012-06-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望44点
  • 贡献值0点
  • 好评度38点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2007-03-07 16:09
本人近期也完mirror driver,希望有兴趣的可以一起玩玩交流
MSN:kernel@kouton.com
fulcrum
驱动牛犊
驱动牛犊
  • 注册日期2006-11-27
  • 最后登录2007-04-10
  • 粉丝0
  • 关注0
  • 积分130分
  • 威望14点
  • 贡献值0点
  • 好评度13点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-03-07 20:19
MSN:fulcrum_GXL@hotmail.com
大家交流下
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2007-03-08 15:42
哈哈,6、7年前就应用到产品中了
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
lhw_1
驱动牛犊
驱动牛犊
  • 注册日期2006-11-09
  • 最后登录2007-01-16
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望3点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2007-03-14 14:17
如果只取图形数据,用BITBLT,设备名参数用MIRROR驱动的设备名,比如\\.\DISPLAYV1
学习
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2007-03-14 14:44
引用第11楼lhw_12007-03-14 14:17发表的“”:
如果只取图形数据,用BITBLT,设备名参数用MIRROR驱动的设备名,比如\.DISPLAYV1

恩,这个是App截取DC图片的方式
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2007-03-14 16:53
我的mirror driver写完了,如果哪位兄弟有这方面的问题,大家一起讨论讨论.
fulcrum
驱动牛犊
驱动牛犊
  • 注册日期2006-11-27
  • 最后登录2007-04-10
  • 粉丝0
  • 关注0
  • 积分130分
  • 威望14点
  • 贡献值0点
  • 好评度13点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2007-03-22 12:28
引用第13楼heihu2007-03-14 16:53发表的“”:
我的mirror driver写完了,如果哪位兄弟有这方面的问题,大家一起讨论讨论.


怎么在窗体中显示屏幕的信息 BitBlt
GDI的函数是
BOOL BitBlt(
  HDC hdcDest, // handle to destination DC
  int nXDest,  // x-coord of destination upper-left corner
  int nYDest,  // y-coord of destination upper-left corner
  int nWidth,  // width of destination rectangle
  int nHeight, // height of destination rectangle
  HDC hdcSrc,  // handle to source DC
  int nXSrc,   // x-coordinate of source upper-left corner
  int nYSrc,   // y-coordinate of source upper-left corner
  DWORD dwRop  // raster operation code
);

MFC的函数
BOOL BitBlt( int x, int y, int nWidth, int nHeight, CDC* pSrcDC, int xSrc, int ySrc, DWORD dwRop );

另有可以缩放的StretchBlt函数,参数列表大致一样。MFC 的CDC* pSrcDC参数不知如何填写?
在窗体中显示应该是用GDI还是MFC的函数。可否贴个代码片断看看
fulcrum1204@126.com

毕业设计路漫漫,哪位热心的前辈能帮助小弟!!!!
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2007-03-23 17:59
通过bitblt效率有点低,我是直接用ExtEscape向驱动传个指针,在驱动中直接COPY的.
fulcrum
驱动牛犊
驱动牛犊
  • 注册日期2006-11-27
  • 最后登录2007-04-10
  • 粉丝0
  • 关注0
  • 积分130分
  • 威望14点
  • 贡献值0点
  • 好评度13点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2007-03-25 12:00
ExtEscape 是如何设置才能正确Copy的 他们参数不知道怎么用?
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2007-03-26 18:35
你要在你的驱动中实现DrvEscape.
tmp001
驱动牛犊
驱动牛犊
  • 注册日期2005-09-20
  • 最后登录2010-04-04
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望3点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2007-03-28 23:34
我最近想研究下如何在directX游戏状态下(Fullscreen)获取屏幕指定坐标的颜色值

想问下用mirror driver可以吗?
我刚接触DDK,看到Win2000下有个mirror的代码,用那个还需要加些什么吗?
heihu
驱动牛犊
驱动牛犊
  • 注册日期2007-02-28
  • 最后登录2007-05-09
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2007-03-29 09:41
可能不行,mirror driver抓不到directx的信息.不过可以考虑directx的过滤驱动.
上一页
游客

返回顶部