阅读:1812回复:14
怎样在U盘接入系统的时候中断,调用自己的效验程序,之后实现分支转移?
我的毕设是USB的问题。只是更具体一些。
要求在U盘接入系统的时候提示输入密码和用户名,如果不正确就不给U盘分配盘符(更不能访问了);正确就进入正常的系统加载过程。 我觉得应该自己重新编写Usb驱动,在其中加入调用自己效验程序的入口。但是不知道怎么阻断正常的USB硬盘加载过程和设置具体的程序入口地址。 有没有哪位大虾可以指点一下啊!!! 多谢多谢!!!!! |
|
最新喜欢:![]() |
沙发#
发布于:2004-03-31 21:40
怎么写过滤器啊?
能具体些给点提示么? 谢谢你的回复啊! ;) |
|
板凳#
发布于:2004-03-31 09:17
做个过滤器吧
|
|
|
地板#
发布于:2004-03-31 09:14
我现在所要做的就是上面所说的,所以我在问各位老大是不是要改写XP原有的USB驱动啊
我本人是很不希望那样做的,请问楼上的兄弟,对于我这种情况到底应该用到哪些开发工具和技术呢? 谢谢您的热情回复 ;) |
|
地下室#
发布于:2004-03-31 09:10
楼主,firmware是固件了,你要做一个所有u盘通用的东西是不可能在底层寻求解决方案的。
|
|
5楼#
发布于:2004-03-31 08:44
请问楼上的高人:
fireware在那里可以下载呢?他是一个怎样的工具呢?相关的资料有的下载么? 谢谢你的回复! ;) |
|
6楼#
发布于:2004-03-31 08:37
你的问题要彻底解决,我想只有通过firmware才能彻底解决。
|
|
7楼#
发布于:2004-03-29 16:08
Thanks so lot!!!
I will try hard to understand you mean and ask more particular question. Thank you again! :) |
|
8楼#
发布于:2004-03-29 15:04
BOOL DeleteVolumeMountPoint(
LPCTSTR lpszVolumeMountPoint ); Parameters lpszVolumeMountPoint [in] Pointer to a string that indicates the volume mount point to be unmounted. This may be a root directory (X:\, in which case the DOS drive letter assignment is removed) or a directory on a volume (X:\mnt\). A trailing backslash is required. Return Values If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError. |
|
9楼#
发布于:2004-03-27 02:38
谢谢楼上各位热心人的答复,万分感激!
但是不知道有没有高手知道怎么禁止分配盘符么? :( |
|
10楼#
发布于:2004-03-26 09:28
// 以下针对XP 针对所有U盘更可以啊! |
|
|
11楼#
发布于:2004-03-26 01:57
就没有高手愿意指导一下么?
|
|
12楼#
发布于:2004-03-22 14:04
dragon_hn 和 windyguy:
多谢两位的热心帮助。 其中需要补充的是,不仅仅是针对我自己的U盘,而是针对所有的U盘(USB Mass Storage),也就是说,无论任何品牌的U盘都要受到这个程序的限制。这也是难点之一。 |
|
13楼#
发布于:2004-03-22 09:29
// 以下针对XP
对如提示输入密码和用户名,只要一个用户级程序就行了. 在用户级程序中,通过捕获DEVICE_CHANGE就可以捕获U盘插入事件,此时通过对比U盘的INQUIRY数据就可以知道是否是你自己的那个特定U盘,如果是就可以提示输入密码了. 至于不给U盘分配盘符的问题,我觉得不好解决,希望高手能解答一下. |
|
|
14楼#
发布于:2004-03-22 09:19
一个内核态的驱动,一个用户级程序,在DriverEntry的地方着手。
|
|