阅读:2471回复:13
NOTE:请教的是高手,一般菜鸟级人物就不要进入该问题,我给20分!
一种方式创建符号链接名如下:
//create sybolic link name ntStatus = IoRegisterDeviceInterface( PhysicalDeviceObject, (LPGUID)&GUID_CLASS_C5509USB_BULK, NULL, &deviceLinkUnicodeString); ntStatus = IoSetDeviceInterfaceState(&deviceLinkUnicodeString, TRUE); 另外一种创建符号链接名如下: RtlInitUnicodeString (&KernelDeviceNameUnicode, KernelDeviceNameBuffer); RtlInitUnicodeString (&UserDeviceLinkUnicode, UserDeviceLinkBuffer); ntStatus = IoCreateSymbolicLink (&UserDeviceLinkUnicode, &KernelDeviceNameUnicode); 请问这两种方式创建的符号链接名有什么区别? 符号链接名在整个驱动程序中,起什么作用?如果没有创建符号链接名,会有什么影响? |
|
|
沙发#
发布于:2004-06-07 14:35
偶是菜鸟,进来看看可以吗?
可不是为了你那20分,只是好奇而已:) |
|
|
板凳#
发布于:2004-06-07 14:53
1、符号连接名是 应用层的程序 调用 驱动 的句炳
2、其实两种都可以的,但是为了避免应用程序在调用驱动的时候,遇到多个USB设备的驱动的连接名字相同最好也趋向于用GUID的符号连接名 |
|
|
地板#
发布于:2004-06-07 14:58
没什么区别。
普通用途里好像没有什么用,特殊用途就看你自己的了。(有比没有好吗?) 如果有的话,你写ap要与驱动联系的话,那就大有用处了,通过符号链接名,你就轻松可创建一个与驱动联系的handle,就可以read,write,ioctl等等。没有的话,..... :( 另外,俺对你的口气不满 “请教的是高手,一般菜鸟级人物就不要进入该问题”。 原因: 俺现在也觉得还是菜鸟(不知道的多着呢) 你问的问题也是很菜的 你不应该看不起菜鸟 |
|
|
地下室#
发布于:2004-06-07 15:17
严重同意,我只是不好意思说而已
|
|
|
5楼#
发布于:2004-06-07 15:44
原因就是我本人就是菜鸟级的一个,你认为菜鸟都能搞清楚这个问题,你还真不是菜鸟!呵呵!
|
|
|
6楼#
发布于:2004-06-07 18:44
用户被禁言,该主题自动屏蔽! |
|
7楼#
发布于:2004-06-08 09:55
这样的帖子也配发到这里?这样的问题本身就菜的不能在菜,能回答的人海多,就连刚接触驱动两天的人都可以回答个一二。
我想看到这样的标题,就是知道也不会回答你!!!!!! :( |
|
|
8楼#
发布于:2004-06-08 14:49
算啦,术业有专攻,不以菜鸟论同行!其实驱动程序方面设计面很广,并且种类也繁多,我觉得我也是菜鸟。
|
|
|
9楼#
发布于:2004-06-08 15:01
呵呵,都很谦虚的嘛,有前途
|
|
|
10楼#
发布于:2004-06-08 16:21
随便一本讲驱动的书的第一章都有介绍
|
|
11楼#
发布于:2004-09-17 10:16
自己是菜鸟可以(就想我),但不能随便评论其他人(除非他是你)
|
|
12楼#
发布于:2004-09-17 10:16
自己是菜鸟可以(就象我),但不能随便评论其他人(除非他是你)
|
|
13楼#
发布于:2004-09-17 14:54
这么难的问题呀,我还真不知道有什么区别,我想问一句,这些符号连接,如何删除呀,别光告诉我创建,没搞诉我删除呀?
|
|