易语言硬盘分区找文件源码
系统结构:EnumUsnRecord,GetFullPathByFileReferenceNumber,GetVolumeInformationA,lstrcmpiA,CreateFileA,CloseHandle,DeviceIoControl_CREATE_USN_JOURNAL_DATA,DeviceIoControl_USN_JOURNAL_DATA,DeviceIoControl_MFT_ENUM_DATA,CopyTo_Usn_Record,CopyToByteArray,WideCharToMultiByte,ZwCreateFile,ZwQueryInformationFile,DeviceIoControl_DELETE_USN_JOURNAL_DATA,
======程序集1
| |
| |------ _启动子程序
| |
| |------ EnumUsnRecord
| |
| |------ GetFullPathByFileReferenceNumber
| |
| |
======调用的Dll
| |
| |---[dll]------ GetVolumeInformationA
| |
| |---[dll]------ lstrcmpiA
| |
| |---[dll]------ CreateFileA
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ DeviceIoControl_CREATE_USN_JOURNAL_DATA
| |
| |---[dll]------ DeviceIoControl_USN_JOURNAL_DATA
| |
| |---[dll]------ DeviceIoControl_MFT_ENUM_DATA
| |
| |---[dll]------ CopyTo_Usn_Record
| |
| |---[dll]------ CopyToByteArray
| |
| |---[dll]------ WideCharToMultiByte
| |
| |---[dll]------ ZwCreateFile
| |
| |---[dll]------ ZwQueryInformationFile
| |
| |---[dll]------ DeviceIoControl_DELETE_USN_JOURNAL_DATA
调用的DLL命令:
.DLL命令 GetVolumeInformationA, 逻辑型, "kernel32", "GetVolumeInformationA"
.参数 卷根路径, 文本型
.参数 卷名, 整数型, 传址
.参数 卷名字符长度, 整数型, 传址
.参数 磁盘卷序列号, 整数型, 传址
.参数 文件夹名长度, 整数型, 传址
.参数 标志, 整数型
.参数 文件系统名称, 文本型, 传址
.参数 名称长度, 整数型
.DLL命令 lstrcmpiA, 整数型, "kernel32.dll", "lstrcmpiA"
.参数 lpString1, 文本型
.参数 lpString2, 文本型
.DLL命令 CreateFileA, 整数型, "kernel32.dll", "CreateFileA"
.参数 打开文件名, 文本型
.参数 访问权限, 整数型
.参数 共享方式, 整数型
.参数 security特性, 整数型
.参数 创建方式, 整数型
.参数 文件属性, 整数型
.参数 从文件复制文件属性, 整数型
.DLL命令 CloseHandle, 整数型, "kernel32", "CloseHandle"
.参数 对象句柄, 整数型
.DLL命令 DeviceIoControl_CREATE_USN_JOURNAL_DATA, 逻辑型, "kernel32.dll", "DeviceIoControl"
.参数 设备句柄, 整数型
.参数 控制参数, 整数型
.参数 参数一, CREATE_USN_JOURNAL_DATA, 传址
.参数 参数二, 整数型
.参数 参数三, 整数型
.参数 参数四, 整数型
.参数 缓冲区字节数, 整数型, 传址
.参数 OVERLAPPED结构地址, 整数型
.DLL命令 DeviceIoControl_USN_JOURNAL_DATA, 逻辑型, "kernel32.dll", "DeviceIoControl"
.参数 设备句柄, 整数型
.参数 控制参数, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型
.参数 参数三, USN_JOURNAL_DATA, 传址
.参数 参数四, 整数型
.参数 缓冲区字节数, 整数型, 传址
.参数 OVERLAPPED结构地址, 整数型
.DLL命令 DeviceIoControl_MFT_ENUM_DATA, 逻辑型, "kernel32.dll", "DeviceIoControl"
.参数 设备句柄, 整数型
.参数 控制参数, 整数型
.参数 参数一, MFT_ENUM_DATA, 传址
.参数 参数二, 整数型
.参数 参数三, 整数型
.参数 参数四, 整数型
.参数 缓冲区字节数, 整数型, 传址
.参数 OVERLAPPED结构地址, 整数型
.DLL命令 CopyTo_Usn_Record, , "kernel32.dll", "RtlMoveMemory"
.参数 目标, USN_RECORD, 传址
.参数 缓冲区, 整数型
.参数 尺寸, 整数型
.DLL命令 CopyToByteArray, , "kernel32.dll", "RtlMoveMemory"
.参数 目标, 字节型, 传址 数组
.参数 缓冲区, 整数型
.参数 尺寸, 整数型
.DLL命令 WideCharToMultiByte, 整数型, "kernel32.dll", "WideCharToMultiByte"
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpWideCharStr, 整数型
.参数 cchWideChar, 整数型
.参数 lpMultiByteStr, 文本型
.参数 cchMultiByte, 整数型
.参数 lpDefaultChar, 整数型
.参数 lpUsedDefaultChar, 整数型
.DLL命令 ZwCreateFile, 整数型, "ntdll.dll", "ZwCreateFile"
.参数 FileHandle, 整数型, 传址
.参数 DesiredAccess, 整数型
.参数 ObjectAttributes, OBJECT_ATTRIBUTES
.参数 IoStatusBlock, IO_STATUS_BLOCK, 传址
.参数 AllocationSize, 整数型
.参数 FileAttributes, 整数型
.参数 ShareAccess, 整数型
.参数 CreateDisposition, 整数型
.参数 CreateOptions, 整数型
.参数 EaBuffer, 整数型
.参数 EaLength, 整数型
.DLL命令 ZwQueryInformationFile, 整数型, "ntdll.dll", "ZwQueryInformationFile"
.参数 FileHandle, 整数型
.参数 IoStatusBlock, IO_STATUS_BLOCK, 传址
.参数 FileInformation, OBJECT_NAME_INFORMATION, 传址
.参数 Length, 整数型
.参数 FileInformationClass, 整数型
.DLL命令 DeviceIoControl_DELETE_USN_JOURNAL_DATA, 逻辑型, "kernel32.dll", "DeviceIoControl"
.参数 设备句柄, 整数型
.参数 控制参数, 整数型
.参数 参数一, DELETE_USN_JOURNAL_DATA, 传址
.参数 参数二, 整数型
.参数 参数三, 整数型
.参数 参数四, 整数型
.参数 缓冲区字节数, 整数型, 传址
.参数 OVERLAPPED结构地址, 整数型
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。