阅读:1407回复:4
filedisk问题(关于如何获取镜像的路径)(增加15分)
filedisk.c已经了解的差不多了,但是有两处要请教。
int Mount( ……………… ……………… ……………… { char VolumeName[] = \"\\\\\\\\.\\\\ :\"; char DeviceName[255]; HANDLE Device; DWORD BytesReturned; 为什么要给volumename赋值\"\\\\\\\\.\\\\ :\";? 另外 main函数中 strcpy(OpenFileInformation->FileName, \"\\\\??\\\\\"); 这一段复制\"\\\\??\\\\\"给filename的作用是? 以上两个是否与获取img文件的路径有关? [编辑 - 2/25/05 by newlife] |
|
最新喜欢:![]() |
驱动老牛
![]() |
沙发#
发布于:2005-02-25 10:25
传递到内核中用的 ZwCreateFile 的文件名前需要\\\\??\\\\
|
|
板凳#
发布于:2005-02-25 16:56
那么volumename的赋值呢?
|
|
地板#
发布于:2005-02-25 21:03
HANDLE createfile(
lpctstr lpfilename, ………… ………… ………… ) lpfilename当时用该函数的unicode版本时,可以使该字符串的长度达到32000,并且在路径前使用“\\\\?\\\\“ 是否这就是使用\\\\?\\\\的原因? 那么volumename呢? |
|
地下室#
发布于:2005-03-11 16:17
strcpy(OpenFileInformation->FileName, \"\\\\??\\\\\");即是在filename(dos设备名)前面加上dos设备目录\\??,在调用ZwCreateFile时它将到目录\\??下寻找这个dos设备名的符号连接以跟具体的设备对象连接起来。
\"\\\\\\\\.\\\\ :\"是dos设备名的格式 |
|