阅读:1660回复:13
请教如何使用武安河现成的例程,送分!
武安河的书,第五章范例有如下打开句柄的调用
m_hDevice = CreateFile(\"\\\\\\\\.\\\\IntrDemo0\", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, NULL); 该范例下还有对应的驱动程序,我不知驱动程序是不是一定要用添加新硬件安装进操作系统才能用,但范例下有没有INF。 上述句柄打开失败,实在不明白 \"\\\\\\\\.\\\\IntrDemo0\" 是什么意思! |
|
沙发#
发布于:2003-07-17 00:17
只见到一个INI文件,没有INF不知如何安装!
|
|
板凳#
发布于:2003-07-17 07:25
net start 驱动程序就行了吧!
|
|
地板#
发布于:2003-07-17 10:26
驱动是必须安装才能用的,要么谁为应用程序提供服务啊?
INF文件一般在SYS子文件夹下面,没有的话可以自己编译生成一个啊 有分吗?呵呵 |
|
地下室#
发布于:2003-07-17 10:30
\"\\\\\\\\.\\\\IntrDemo0\"这个书里就写得很明白啊,没认真看书吧?就是用来打开句柄的两种方式之一啊,还有一种是GUID
|
|
5楼#
发布于:2003-07-17 12:51
书上是讲过打开句柄的两种方式,但\"\\\\\\\\.\\\\IntrDemo0\" 是什么东西我的确不明白,书上也讲得不清楚,我估计和inf文件定义的名字有关,能否推荐一本入门者用的书?
实在不知道INF如何编译生成,我只在driver studio 向导生成框架时生成过inf,但范例现成的东西我也不知他是如何生成的,我rebuild all后发现只更新了sys 文件,没看到inf文件,另外,ini文件应该是有些用的,我看到他和inf文件一样的图标,但不知怎样用! |
|
6楼#
发布于:2003-07-17 13:13
\\\\\\\\.\\\\IntrDemo0是你要打开设备的symbolic link name,它与驱动程序中你用到的设备相对应。
这是一个驱动中的例子,你可以参考一下: UNICODE_STRING devName; UNICODE_STRING linkName; RtlInitUnicodeString(&devName, L\"\\\\Device\\\\Intrument\"); RtlInitUnicodeString(&linkName,L\"\\\\DosDevices\\\\IntrDemo0\"); IoCreateSymbolicLink(&linkName, &devName); 还有你编译驱动后只会有sys文件,inf文件是要你自己写的,不过你可以找一个inf文件然后改改就行了。ini文件好像用不到的呦 |
|
7楼#
发布于:2003-07-17 14:53
非常感谢楼上回答,看来我要多看看inf里写的内容了,本想多送点分的,但送分的图标不见了,如何表示感谢,另外能推荐介绍inf文件的文章或书吗?
|
|
8楼#
发布于:2003-07-17 15:44
我找了一个别的例程的inf将对应的名字一换就可以安装了,虽然我不懂里面的东西都代表什么意思,但驱动程序可正常工作了,再感谢!
我刚才发了信给管理员问他如何用人民币买分数,他没回答,这个网站好奇怪,连买分的具体步骤都不告诉! |
|
9楼#
发布于:2003-07-18 08:01
武安河的那本书怎么样啊?
|
|
10楼#
发布于:2003-07-18 10:47
初看可能看不明白,但是细细多读几遍后,就发现价值很大。尤其是其中的实例,比如PCI9054的。
如果结合《windows2000内部揭密》和《windows2000设备驱动程序设计指南(2E)》(机械工业出版)效果更好。 |
|
11楼#
发布于:2003-07-18 19:46
书写得不怎么样,论坛上好象有个评价,不适合初学者,程序的注释极少,看来还要另外买一本详细点的,适合初学者的书,我会按楼上的建议去买一本回来看看!
|
|
12楼#
发布于:2003-07-18 22:58
\"\\\\\\\\.\\\\IntrDemo0\"这个书里就写得很明白啊,没认真看书吧?就是用来打开句柄的两种方式之一啊,还有一种是GUID ddk中的例子:如果建立设备对象时,有iocreatesymbliclink()的话,用这种方法打开!!!!!!! |
|
13楼#
发布于:2003-07-18 23:28
ddk中的例子:如果建立设备对象时,有iocreatesymbliclink()的话,用这种方法打开!!!!!!! [/quote]
好象没看到建立对象时使用了这个函数 |
|