易语言目录监视类源码
系统结构:处理函数,加入目录,开始监视,是否可以忽略变化,停止监视,取得监视目录,取得文件变更,UnicodeToAnsi_Ptr,GetVolumeNameForVolumeMountPoint,FindFirstVolumeMountPoint,FindNextVolumeMountPoint,CreateIoCompletionPort,GetQueuedCompletionStatus,LPPER_HANDLE_DATA,GetLastError,取内存变量地址3_,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 处理函数
| |
| |
======目录监视类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 加入目录
| |
| |------ 开始监视
| |
| |------ 是否可以忽略变化
| |
| |------ 停止监视
| |
| |------ 取得监视目录
| |
| |------ 取得文件变更
| |
| |------ UnicodeToAnsi_Ptr
| |
| |
======调用的Dll
| |
| |---[dll]------ _CloseHandle
| |
| |---[dll]------ _CreateFile
| |
| |---[dll]------ GetVolumeNameForVolumeMountPoint
| |
| |---[dll]------ FindFirstVolumeMountPoint
| |
| |---[dll]------ FindNextVolumeMountPoint
| |
| |---[dll]------ _CreateThread
| |
| |---[dll]------ _ReadDirectoryChangesW
| |
| |---[dll]------ _WideCharToMultiByte_Byte
| |
| |---[dll]------ _GlobalAlloc
| |
| |---[dll]------ _GlobalFree
| |
| |---[dll]------ CreateIoCompletionPort
| |
| |---[dll]------ GetQueuedCompletionStatus
| |
| |---[dll]------ LPPER_HANDLE_DATA
| |
| |---[dll]------ GetLastError
| |
| |---[dll]------ 取内存变量地址3_
调用的DLL命令:
.DLL命令 _CloseHandle, 整数型, , "CloseHandle"
.参数 hObject, 整数型
.DLL命令 _CreateFile, 整数型, , "CreateFileA"
.参数 lpFileName, 文本型
.参数 dwDesiredAccess, 整数型
.参数 dwShareMode, 整数型
.参数 lpSecurityAttributes, 整数型
.参数 dwCreationDisposition, 整数型
.参数 dwFlagsAndAttributes, 整数型
.参数 hTemplateFile, 整数型
.DLL命令 GetVolumeNameForVolumeMountPoint, , "Kernel32.dll", "GetVolumeNameForVolumeMountPointA"
.参数 lpszFileName, 文本型
.参数 lpszVolumePathName, 文本型, 传址
.参数 cchBufferLength, 整数型
.DLL命令 FindFirstVolumeMountPoint, 整数型, "Kernel32.dll", "FindFirstVolumeMountPointA"
.参数 扫描目录, 文本型, 传址
.参数 装在点, 文本型, 传址
.参数 长度, 整数型
.DLL命令 FindNextVolumeMountPoint, 逻辑型, "Kernel32.dll", "FindNextVolumeMountPointA"
.参数 寻找句柄, 整数型
.参数 装在点, 文本型, 传址
.参数 长度, 整数型
.DLL命令 _CreateThread, 整数型, , "CreateThread"
.参数 lpThreadAttributes, 整数型
.参数 dwStackSize, 整数型
.参数 lpStartAddress, 子程序指针
.参数 lpParameter, 整数型
.参数 dwCreationFlags, 整数型
.参数 lpThreadId, 整数型
.DLL命令 _ReadDirectoryChangesW, 逻辑型, , "ReadDirectoryChangesW"
.参数 hDirectory
.参数 lpBuffer, 整数型
.参数 nBufferLength
.参数 bWatchSubtree, 逻辑型
.参数 dwNotifyFilter
.参数 lpBytesReturned, , 传址
.参数 lpOverlapped, 整数型
.参数 lpCompletionRoutine
.DLL命令 _WideCharToMultiByte_Byte, 整数型, , "WideCharToMultiByte"
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpWideCharStr, 整数型
.参数 cchWideChar, 整数型
.参数 lpMultiByteStr, 文本型
.参数 cchMultiByte, 整数型
.参数 lpDefaultChar, 整数型
.参数 lpUsedDefaultChar, 整数型
.DLL命令 _GlobalAlloc, 整数型, , "GlobalAlloc"
.参数 wFlags, 整数型
.参数 dwBytes, 整数型
.DLL命令 _GlobalFree, 整数型, , "GlobalFree"
.参数 hMem, 整数型
.DLL命令 CreateIoCompletionPort, 整数型, "Kernel32.dll", "CreateIoCompletionPort"
.参数 FileHandle, 整数型
.参数 ExistingCompletionPort, 整数型
.参数 CompletionKey, 整数型
.参数 NumberOfConcurrentThreads, 整数型
.DLL命令 GetQueuedCompletionStatus, 逻辑型, , "GetQueuedCompletionStatus"
.参数 CompletionPort, 整数型
.参数 lpNumberOfBytesTransferred, 整数型, 传址
.参数 lpCompletionKey, 整数型, 传址
.参数 Overlapped, 整数型, 传址
.参数 dwMilliseconds, 整数型
.DLL命令 LPPER_HANDLE_DATA, 整数型, , "lstrcpyn"
.参数 目的指针, 字节集, 传址
.参数 源指针, 字节集, 传址
.参数 复制长度, 整数型, , 0
.DLL命令 GetLastError, 整数型, "Kernel32.dll", "GetLastError"
.DLL命令 取内存变量地址3_, 整数型, "kernel32", "lstrcpynA"
.参数 数据1, 字节集, , lpString1
.参数 数据2, 字节集, , lpString2
.参数 数据长度, 整数型, , iMaxLength
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。