91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 1.15MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2023-10-24
  • 語言: 其他
  • 標簽: filedisk??

資源簡介

filedisk 源碼 分析 分為核心層和應用層兩個部分,特別的詳細,有助于對虛擬磁盤的深入研究。

資源截圖

代碼片段和文件信息

///////////////////////////////////////////////////////
//該版本的ARG?PARSER部分存在問題
//在帶有5個參數,但是缺少文件名的狀況沒有辦法進行解析
//BUG一個
////////////////////////////////////////////////////////

#include?
#include?
#include?
#include?“filedisk.h“

int?Syntax(void)
{
????fprintf(stderr?“syntax:\n“);
????fprintf(stderr?“filedisk?/mount??devicenumber?filename?[size[k|M|G]?|?/ro?|?/cd]?driveletter\n“);
????fprintf(stderr?“filedisk?/umount?driveletter\n“);
????fprintf(stderr?“\n“);
????fprintf(stderr?“example:\n“);
????fprintf(stderr?“filedisk?/mount??0?c:\\temp\\filedisk.img?8M?f:\n“);
????fprintf(stderr?“filedisk?/mount??1?c:\\temp\\cdimage.iso?/cd?i:\n“);
????fprintf(stderr?“filedisk?/umount?f:\n“);
????fprintf(stderr?“filedisk?/umount?i:\n“);

????return?-1;
}

void?PrintLastError(char*?Prefix)
{
????LPVOID?lpMsgBuf;

????FormatMessage(?
????????FORMAT_MESSAGE_ALLOCATE_BUFFER?|
????????FORMAT_MESSAGE_FROM_SYSTEM?|
????????FORMAT_MESSAGE_IGNORE_INSERTS
????????NULL
????????GetLastError()
????????0
????????(LPTSTR)?&lpMsgBuf
????????0
????????NULL
????????);

????fprintf(stderr?“%s?%s“?Prefix?(LPTSTR)?lpMsgBuf);

????LocalFree(lpMsgBuf);
}

int
Mount(
????int?????????????????????DeviceNumber
????POPEN_FILE_INFORMATION??OpenFileInformation
????char????????????????????DriveLetter

{
????char????VolumeName[]?=?“\\\\.\\?:“;
????char????DeviceName[255];
????HANDLE??Device;
????DWORD???BytesReturned;

????VolumeName[4]?=?DriveLetter;?//處理結果類似“\\\\.\\D:“

////////////////////////////////////////////////////////////////
//測試該虛擬卷是否已經存在,
//如果已經存在
//則輸出錯誤
////////////////////////////////////////////////////////////////
????Device?=?CreateFile(
????????VolumeName
????????GENERIC_READ?|?GENERIC_WRITE
????????FILE_SHARE_READ?|?FILE_SHARE_WRITE
????????NULL
????????OPEN_EXISTING
????????FILE_FLAG_NO_BUFFERING
????????NULL
????????);

????if?(Device?!=?INVALID_HANDLE_VALUE) //這里判斷的是合法的情況
????{
????????SetLastError(ERROR_BUSY);
????????PrintLastError(&VolumeName[4]);
????????return?-1;
????}

////////////////////////////////////////////////////////////////
//如果不存在
//則開始建立虛擬盤符
//DEVICE_NAME_PREFIX=“\Device\FileDisk\FileDisk”
////////////////////////////////////////////////////////////////
????
sprintf(DeviceName?DEVICE_NAME_PREFIX?“%u“?DeviceNumber);

????////////////////////////////////////////////////////////////////
//所有到VolumeName的IO請求都將被重定向到DeviceName
//執行到這里,在系統中應該可以看見一個虛擬的盤符出現
//但是還不能對該盤符做任何操作
////////////////////////////////////////////////////////////////

if?(!DefineDosDevice(
????????DDD_RAW_TARGET_PATH
????????&VolumeName[4]
????????DeviceName
????????))
????{
????????PrintLastError(&VolumeName[4]);
????????return?-1;
????}
????
////////////////////////////////////////////////////////////////
//打開虛擬盤符
//如果打開設備成功,則向其發送IOCTL_FILE_DISK_OPEN_FILE?IRP
//其中IOCTL_FILE_DISK_OPEN_FILE在filedisk

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????356??2002-08-08?14:14??ccdeath-filedisk\filedisk.reg

?????文件??????10556??2004-06-09?08:14??ccdeath-filedisk\filedisk.sys

?????文件??????24455??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug\filedisk.obj

?????文件?????176263??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug\filedisk應用層.exe

?????文件?????185200??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug\filedisk應用層.ilk

????I.A....???3715948??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug\filedisk應用層.pch

?????文件?????361472??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug\filedisk應用層.pdb

?????文件??????41984??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug\vc60.idb

?????文件??????69632??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug\vc60.pdb

?????文件??????10574??2007-12-26?10:15??ccdeath-filedisk\filedisk應用層\filedisk.c

?????文件???????1057??2007-12-26?10:20??ccdeath-filedisk\filedisk應用層\filedisk.h

?????文件???????4435??2007-12-26?08:50??ccdeath-filedisk\filedisk應用層\filedisk應用層.dsp

?????文件????????553??2009-08-21?20:19??ccdeath-filedisk\filedisk應用層\filedisk應用層.dsw

?????文件??????50176??2009-08-21?20:57??ccdeath-filedisk\filedisk應用層\filedisk應用層.ncb

?????文件??????48640??2009-08-21?20:57??ccdeath-filedisk\filedisk應用層\filedisk應用層.opt

?????文件???????1386??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\filedisk應用層.plg

????.......??????1760??2007-12-26?08:45??ccdeath-filedisk\filedisk核心層\buildchk.log

?????文件??????42187??2009-08-22?22:32??ccdeath-filedisk\filedisk核心層\filedisk.c

?????文件???????1158??2007-12-26?09:45??ccdeath-filedisk\filedisk核心層\filedisk.h

?????文件???????4069??2007-12-26?08:40??ccdeath-filedisk\filedisk核心層\filedisk核心層.dsp

?????文件????????757??2007-12-26?08:53??ccdeath-filedisk\filedisk核心層\filedisk核心層.dsw

?????文件??????66560??2009-08-20?23:58??ccdeath-filedisk\filedisk核心層\filedisk核心層.ncb

?????文件??????53760??2009-08-20?23:58??ccdeath-filedisk\filedisk核心層\filedisk核心層.opt

?????文件???????1296??2007-12-26?08:39??ccdeath-filedisk\filedisk核心層\filedisk核心層.plg

?????文件????????267??2006-11-03?20:33??ccdeath-filedisk\filedisk核心層\MAKEFILE

?????文件?????????91??2007-12-26?08:44??ccdeath-filedisk\filedisk核心層\Sources

?????文件????????307??2002-08-08?14:25??ccdeath-filedisk\install.txt

?????文件????????179??2007-12-26?13:24??ccdeath-filedisk\閱讀之前說明.txt

?????目錄??????????0??2009-08-21?20:24??ccdeath-filedisk\filedisk應用層\Debug

?????目錄??????????0??2009-08-20?23:57??ccdeath-filedisk\filedisk核心層\Debug

............此處省略6個文件信息

評論

共有 條評論