📄 csdn技术中心 jiurl键盘驱动 2.htm
字号:
href="http://dev.csdn.net/articlelist.aspx?c=5">Perl</A> (<A
href="http://www.csdn.net/Rss/RssFeed.aspx?rssid=1&bigclassid=5">rss</A>) </TD></TR></TBODY></TABLE>
<TABLE style="MARGIN-BOTTOM: 4px" cellSpacing=0 cellPadding=0
width="95%" align=center border=0>
<TBODY>
<TR>
<TD style="COLOR: #0033ff; BORDER-BOTTOM: #b0c4de 1px dashed"
align=right><FONT style="FONT-SIZE: 8pt">综合</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/articlelist.aspx?c=9">其他开发语言</A> (<A
href="http://www.csdn.net/Rss/RssFeed.aspx?rssid=1&bigclassid=9">rss</A>) </TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/articlelist.aspx?c=11">文件格式</A> (<A
href="http://www.csdn.net/Rss/RssFeed.aspx?rssid=1&bigclassid=11">rss</A>) </TD></TR></TBODY></TABLE>
<TABLE style="MARGIN-BOTTOM: 4px" cellSpacing=0 cellPadding=0
width="95%" align=center border=0>
<TBODY>
<TR>
<TD style="COLOR: #0033ff; BORDER-BOTTOM: #b0c4de 1px dashed"
align=right><FONT style="FONT-SIZE: 8pt">企业开发</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/articlelist.aspx?c=10">游戏开发</A> (<A
href="http://www.csdn.net/Rss/RssFeed.aspx?rssid=1&bigclassid=10">rss</A>) </TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/articlelist.aspx?c=12">网站制作技术</A> (<A
href="http://www.csdn.net/Rss/RssFeed.aspx?rssid=1&bigclassid=12">rss</A>) </TD></TR></TBODY></TABLE>
<TABLE style="MARGIN-BOTTOM: 4px" cellSpacing=0 cellPadding=0
width="95%" align=center border=0>
<TBODY>
<TR>
<TD style="COLOR: #0033ff; BORDER-BOTTOM: #b0c4de 1px dashed"
align=right><FONT style="FONT-SIZE: 8pt">数据库</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/articlelist.aspx?c=8">数据库开发</A> (<A
href="http://www.csdn.net/Rss/RssFeed.aspx?rssid=1&bigclassid=8">rss</A>) </TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="95%" align=center
border=0>
<TBODY>
<TR>
<TD style="COLOR: #0033ff; BORDER-BOTTOM: #b0c4de 1px dashed"
align=right><FONT style="FONT-SIZE: 8pt">软件工程</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/articlelist.aspx?c=13">其他</A> (<A
href="http://www.csdn.net/Rss/RssFeed.aspx?rssid=1&bigclassid=13">rss</A>) </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR>
<TABLE cellSpacing=1 cellPadding=0 width="100%" bgColor=#000000
border=0><TBODY>
<TR>
<TD vAlign=top bgColor=#ededed>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD align=right background="CSDN技术中心 JIURL键盘驱动 2.files/top.gif"
height=27><FONT
class=fonttitle>积极原创作者 </FONT></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=1 cellPadding=2 width="100%" border=0>
<TBODY>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/tellmenow">tellmenow</A> <FONT
color=#ff0000>(22)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/cutemouse">cutemouse</A> <FONT
color=#ff0000>(22)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/softj">softj</A> <FONT
color=#ff0000>(78)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/iiprogram">iiprogram</A> <FONT
color=#ff0000>(69)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/qdzx2008">qdzx2008</A> <FONT
color=#ff0000>(50)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/goodboy1881">goodboy1881</A> <FONT
color=#ff0000>(14)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/wangchinaking">wangchinaking</A> <FONT
color=#ff0000>(58)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/fancyhf">fancyhf</A> <FONT
color=#ff0000>(1)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/harrymeng">harrymeng</A> <FONT
color=#ff0000>(41)</FONT></TD></TR>
<TR>
<TD align=right><A
href="http://dev.csdn.net/user/yjz0065">yjz0065</A> <FONT
color=#ff0000>(113)</FONT></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD>
<TD vAlign=top width=786>
<TABLE cellPadding=4 width="100%" border=0>
<TBODY>
<TR>
<TD width=10 height=19></TD>
<TD height=19>
<TABLE cellSpacing=3 cellPadding=3 width="100%" border=0>
<TBODY>
<TR>
<TD><A href="http://www.csdn.net/">CSDN</A> - <A
href="http://dev.csdn.net/">文档中心</A> - <FONT color=#003399><A
id=ArticleTitle1_ArticleTitle1_hlClass
href="http://dev.csdn.net/articlelist.aspx?c=1">Visual
C++</A></FONT> </TD>
<TD align=right>阅读:<SPAN
id=ArticleTitle1_ArticleTitle1_lblReadCount>1658</SPAN>
评论: <SPAN
id=ArticleTitle1_ArticleTitle1_lblCommentCount>0</SPAN>
<A
href="http://dev.csdn.net/article/22/22707.shtm#Comment">参与评论</A>
</TD></TR></TBODY></TABLE>
<TABLE cellSpacing=3 cellPadding=3 width="100%" bgColor=#eeeeee
border=0>
<TBODY>
<TR>
<TD noWrap width=60 height=0></TD>
<TD></TD></TR>
<TR>
<TD noWrap align=middle bgColor=#003399 height=16><FONT
color=#ffffff>标题</FONT></TD>
<TD><B> <SPAN
id=ArticleTitle1_ArticleTitle1_lblTitle>JIURL键盘驱动
2</SPAN></B> 选择自 <A
id=ArticleTitle1_ArticleTitle1_AuthorLink
href="http://dev.csdn.net/user/imquestion">imquestion</A> 的
Blog </TD></TR>
<TR>
<TD align=middle bgColor=#003399 height=16><FONT
color=#ffffff>关键字</FONT></TD>
<TD width=500> <SPAN
id=ArticleTitle1_ArticleTitle1_lblKeywords>jiurl
http://jiurl.nease.net i8042 8042 kbdclass</SPAN></TD></TR>
<TR>
<TD align=middle bgColor=#003399 height=16><FONT
color=#ffffff>出处</FONT></TD>
<TD> <SPAN
id=ArticleTitle1_ArticleTitle1_lblSource></SPAN></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD width=10></TD>
<TD><SPAN id=ArticleContent1_ArticleContent1_lblContent>
<DIV align=center>
<CENTER>
<TABLE height=29 cellSpacing=0 cellPadding=0 width="96%" border=0>
<TBODY>
<TR>
<TD class=title width="100%" height=41>
<P align=center><FONT face=宋体>JIURL键盘驱动
2</FONT></P></TD></TR></CENTER>
<TR>
<TD class=author width="100%" height=9>
<P align=center><FONT face=宋体>作者: <A
href="mailto:jiurl@mail.china.com">JIURL</A> </FONT></P></TD></TR>
<TR>
<TD class=author width="100%" height=6>
<P align=center><FONT
face=宋体>
主页: <A
href="http://jiurl.yeah.net/">http://jiurl.yeah.net/</A>
</FONT></P></TD></TR>
<TR>
<TD class=author width="100%" height=2>
<P align=center><FONT face=宋体> 日期:
2003-12-13</FONT> </P></TD></TR></TBODY></TABLE></DIV>
<DIV align=center>
<CENTER>
<TABLE height=1 cellSpacing=0 cellPadding=0 width="96%" border=0>
<TBODY>
<TR>
<TD width="100%" height=1>
<HR color=#396da5 SIZE=3>
</TD></TR></TBODY></TABLE></CENTER></DIV>
<DIV align=center>
<TABLE class=content height=200 cellSpacing=0 cellPadding=0
width="96%" border=0>
<TBODY>
<TR>
<TD vAlign=top width="131%" height=200>
<P><B>2 应用层基础知识</B><BR><BR>
在讨论使用键盘的应用程序这个问题之前,我们首先介绍一下 Windows
中,应用程序使用驱动,应用程序与驱动通信的一些问题。<BR><BR>2.1
应用程序如何使用驱动<BR><BR> 应用程序中使用
CreateFile,ReadFile,WriteFile,DeviceIoControl,CloseHandle
来指示驱动程序完成某种任务。比如我们在应用程序中使用 ReadFile 来让驱动读取硬件设备,我们在应用程序中使用
WriteFile 来让驱动写硬件设备,我们在应用程序中使用 DeviceIoContorl
来让驱动完成某些驱动支持的功能。而 ReadFile, WriteFile, DeviceIoControl 这三个 api
都需要一个句柄作为参数,以确定他们是要哪个驱动来完成他们的请求。这个句柄是通过 CreateFile 获得的。使用
CloseHandle 关闭这个句柄。简单的说就是,应用程序中,首先要通过 CreateFile
获得一个句柄,之后应用程序可以以这个句柄为参数,使用 ReadFile,WriteFile,DeviceIoControl
让驱动程序执行某种操作。当不再使用时,通过 CloseHandle
关闭这个句柄。<BR><BR> 这几个 api 都位于 KERNEL32.DLL
中,他们最终会通过系统服务(int 2e)调用内核中的相应的函数,如 NtCreateFile,NtReadFile 等。而
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -