易语言文件读写模块源码
系统结构:子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号,取映射对象名,打开文件,初始化_从文件创建,初始化_从内存创建,从文件号创建,初始化_从映射对象名创建,关闭,关闭对象,取首地址,取读写位置,移动读写位置,移到首位置,移到尾位置,读出字节集,读出文本,读出字节,读出短整数,读出整数,读出长整数,读出小数,读出双精度小数,读出逻辑值,读出日期时间型,写入字节集,写入文本,写入小数,写入双精度小数,写入字节,写入短整数,写入整数,写入长整数,写入日期时间,写入逻辑,取错误信息,插入字节集,插入文本,插入小数,插入双精度小数,插入字节,插入短整数,插入整数,插入长整数,插入日期时间,插入逻辑,取文件映射尺寸,寻找字节集,中止寻找字节集,取寻找字节集进度,删除数据,取文件映射对象名,WriteFile,CloseHandle,GetFileSize,GetLastError,FormatMessage,ReadFile,CreateFile,SetFilePointer,LockFile,UnlockFile,FlushFileBuffers,FlushViewOfFile,取文件路径目录_,CreateFileMapping1,CreateFileMapping2,MapViewOfFile,UnmapViewOfFile,GlobalLock,GlobalHandle,OpenFileMapping,GlobalSize,CopyMemory,CopyMemory_s,CopyMemory_x,CopyMemory_sj,CopyMemory_d,CopyMemory_z,CopyMemory_c,CopyMemory_r,MoveMemory,VirtualQuery,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 子程序1
| |
| |
======文件读写
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 打开文件
| |
| |------ 生成空文件
| |
| |------ 生成重复字节文件
| |
| |------ 移到文件首
| |
| |------ 移到文件尾
| |
| |------ 移动读写位置
| |
| |------ 取读写位置
| |
| |------ 关闭文件
| |
| |------ 取文件长度
| |
| |------ 写出字节集
| |
| |------ 是否在文件尾
| |
| |------ 取错误信息
| |
| |------ 读入字节集
| |
| |------ 读入2M字节集
| |
| |------ 清除文件缓冲区
| |
| |------ 读入文本
| |
| |------ 写出文本
| |
| |------ 写文本行
| |
| |------ 读入一行
| |
| |------ 插入字节集
| |
| |------ 取文件号
| |
| |
======文件映射
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 取映射对象名
| |
| |------ 打开文件
| |
| |------ 初始化_从文件创建
| |
| |------ 初始化_从内存创建
| |
| |------ 从文件号创建
| |
| |------ 初始化_从映射对象名创建
| |
| |------ 关闭
| |
| |------ 关闭对象
| |
| |------ 取首地址
| |
| |------ 取读写位置
| |
| |------ 移动读写位置
| |
| |------ 移到首位置
| |
| |------ 移到尾位置
| |
| |------ 读出字节集
| |
| |------ 读出文本
| |
| |------ 读出字节
| |
| |------ 读出短整数
| |
| |------ 读出整数
| |
| |------ 读出长整数
| |
| |------ 读出小数
| |
| |------ 读出双精度小数
| |
| |------ 读出逻辑值
| |
| |------ 读出日期时间型
| |
| |------ 写入字节集
| |
| |------ 写入文本
| |
| |------ 写入小数
| |
| |------ 写入双精度小数
| |
| |------ 写入字节
| |
| |------ 写入短整数
| |
| |------ 写入整数
| |
| |------ 写入长整数
| |
| |------ 写入日期时间
| |
| |------ 写入逻辑
| |
| |------ 取错误信息
| |
| |------ 插入字节集
| |
| |------ 插入文本
| |
| |------ 插入小数
| |
| |------ 插入双精度小数
| |
| |------ 插入字节
| |
| |------ 插入短整数
| |
| |------ 插入整数
| |
| |------ 插入长整数
| |
| |------ 插入日期时间
| |
| |------ 插入逻辑
| |
| |------ 取文件映射尺寸
| |
| |------ 寻找字节集
| |
| |------ 中止寻找字节集
| |
| |------ 取寻找字节集进度
| |
| |------ 删除数据
| |
| |------ 取文件映射对象名
| |
| |
======调用的Dll
| |
| |---[dll]------ WriteFile
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ GetFileSize
| |
| |---[dll]------ GetLastError
| |
| |---[dll]------ FormatMessage
| |
| |---[dll]------ ReadFile
| |
| |---[dll]------ CreateFile
| |
| |---[dll]------ SetFilePointer
| |
| |---[dll]------ LockFile
| |
| |---[dll]------ UnlockFile
| |
| |---[dll]------ FlushFileBuffers
| |
| |---[dll]------ FlushViewOfFile
| |
| |---[dll]------ 取文件路径目录_
| |
| |---[dll]------ CreateFileMapping1
| |
| |---[dll]------ CreateFileMapping2
| |
| |---[dll]------ MapViewOfFile
| |
| |---[dll]------ UnmapViewOfFile
| |
| |---[dll]------ GlobalLock
| |
| |---[dll]------ GlobalHandle
| |
| |---[dll]------ OpenFileMapping
| |
| |---[dll]------ GlobalSize
| |
| |---[dll]------ CopyMemory
| |
| |---[dll]------ CopyMemory_s
| |
| |---[dll]------ CopyMemory_x
| |
| |---[dll]------ CopyMemory_sj
| |
| |---[dll]------ CopyMemory_d
| |
| |---[dll]------ CopyMemory_z
| |
| |---[dll]------ CopyMemory_c
| |
| |---[dll]------ CopyMemory_r
| |
| |---[dll]------ MoveMemory
| |
| |---[dll]------ VirtualQuery
调用的DLL命令:
.DLL命令 WriteFile, 逻辑型, "kernel32.dll", "WriteFile", , (非零)表示成功,否则返回零。
.参数 文件句柄, 整数型, , hFile,一个文件的句柄
.参数 数据缓冲区, 字节集, 传址, lpBuffer,要写入的一个数据缓冲区
.参数 欲写入字节数量, 整数型, , nNumberOfBytesToWrite,要写入数据的字节数量。如写入零字节,表示什么都不写入,但会更新文件的“上一次修改时间”。针对位于远程系统的命名管道,限制在65535个字节以内
.参数 实际写入字节数量, 整数型, 传址, lpNumberOfBytesWritten,实际写入文件的字节数量
.参数 特殊结构, 整数型, , lpOverlapped,倘若在指定FILE_FLAG_OVERLAPPED的前提下打开文件,这个参数就必须引用一个特殊的结构。那个结构定义了一次异步写操作。否则,该参数应置为空(将声明变为ByVal As Long,并传递零值)
.DLL命令 CloseHandle, 整数型, "kernel32", "CloseHandle"
.参数 对象句柄, 整数型
.DLL命令 GetFileSize, 整数型, "kernel32.dll", "GetFileSize"
.参数 文件号, 整数型, , hFile
.参数 文件尺寸, 整数型, 传址, lpFileSize
.DLL命令 GetLastError, 整数型, "kernel32", "GetLastError"
.DLL命令 FormatMessage, 整数型, "kernel32.dll", "FormatMessageA"
.参数 dwFlags, 整数型
.参数 lpSource, 整数型, , Any
.参数 消息ID, 整数型
.参数 语言ID, 整数型, , 现在系统不支持了,置0
.参数 缓冲区, 文本型
.参数 缓冲区大小, 整数型
.参数 Arguments, 整数型
.DLL命令 ReadFile, 整数型, "kernel32", "ReadFile", , ""
.参数 hFile, 整数型, , 文件的句柄
.参数 lpBuffer, 字节集, 传址, 用于保存读入数据的一个缓冲区
.参数 nNumberOfBytesToRead, 整数型, , 要读入的字符数
.参数 lpNumberOfBytesRead, 整数型, 传址, 从文件中实际读入的字符数
.参数 lpOverlapped, 整数型, , 如文件打开时指定了FILE_FLAG_OVERLAPPED,那么必须用这个参数引用一个特殊的结构。那个结构定义了一次异步读取操作。否则,应将这个参数设为NULL(将函数声明成ByVal As Long,并传递零值)
.DLL命令 CreateFile, 整数型, "kernel32.dll", "CreateFileA", , ""
.参数 lpFileName, 文本型, , ""
.参数 dwDesiredAccess, 整数型, , ""
.参数 dwShareMode, 整数型, , ""
.参数 lpSecurityAttributes, 整数型, , ""
.参数 dwCreationDisposition, 整数型, , ""
.参数 dwFlagsAndAttributes, 整数型, , ""
.参数 hTemplateFile, 整数型, , ""
.DLL命令 SetFilePointer, 整数型, "kernel32.dll", "SetFilePointer", , ""
.参数 hFile, 整数型, , ""
.参数 lDistanceToMove, 整数型, , ""
.参数 lpDistanceToMoveHigh, 整数型, 传址, ""
.参数 dwMoveMethod, 整数型, , ""
.DLL命令 LockFile, 整数型, "kernel32", "LockFile", , ""
.参数 hFile, 整数型, , ""
.参数 dwFileOffsetLow, 整数型, , ""
.参数 dwFileOffsetHigh, 整数型, , ""
.参数 nNumberOfBytesToLockLow, 整数型, , ""
.参数 nNumberOfBytesToLockHigh, 整数型, , ""
.DLL命令 UnlockFile, 整数型, "kernel32", "UnlockFile", , ""
.参数 hFile, 整数型, , ""
.参数 dwFileOffsetLow, 整数型, , ""
.参数 dwFileOffsetHigh, 整数型, , ""
.参数 nNumberOfBytesToUnlockLow, 整数型, , ""
.参数 nNumberOfBytesToUnlockHigh, 整数型, , ""
.DLL命令 FlushFileBuffers, 逻辑型, "kernel32", "FlushFileBuffers"
.参数 hFile, 整数型, , ""
.DLL命令 FlushViewOfFile, 整数型, "kernel32", "FlushViewOfFile", , 将写入文件映射缓冲区的所有数据都刷新到磁盘
.参数 lpBaseAddress, , , 包含了刷新基本地址的一个Long值(参考注解)
.参数 dwNumberOfBytesToFlush, , , 欲刷新的字节数
.DLL命令 取文件路径目录_, 逻辑型, "shlwapi.dll", "PathRemoveFileSpecA", , 如:"c:\windows\boot.ini"返回"c:\windows"
.参数 路径文本, 文本型, , pszPath
.DLL命令 CreateFileMapping1, 整数型, "kernel32", "CreateFileMappingA", , 创建文件映射对象。成功就返回文件映射对象句柄
.参数 hFile, 整数型, , 欲在其中创建映射的一个已经打开的磁盘文件句柄
.参数 lpFileMappigAttributes, 整数型, , 通常用0表示使用默认security对象
.参数 flProtect, 整数型, , 打开映射的方式(用API常数表示的读/写或其它)
.参数 dwMaximumSizeHigh, 整数型, , 表示文件映射的最大长度的高32位。通常均设为0表示磁盘文件的实际长度
.参数 dwMaximumSizeLow, 整数型, , 表示文件映射的最大长度的低32位。通常均设为0表示磁盘文件的实际长度
.参数 lpName, 文本型, , 指定文件映射对象的名称
.DLL命令 CreateFileMapping2, 整数型, "kernel32", "CreateFileMappingA", , 创建文件映射对象。成功就返回文件映射对象句柄
.参数 hFile, 整数型, , 欲在其中创建映射的一个已经打开的磁盘文件句柄
.参数 lpFileMappigAttributes, 整数型, , 通常用0表示使用默认security对象
.参数 flProtect, 整数型, , 打开映射的方式(用API常数表示的读/写或其它)
.参数 dwMaximumSizeHigh, 整数型, , 表示文件映射的最大长度的高32位。通常均设为0表示磁盘文件的实际长度
.参数 dwMaximumSizeLow, 整数型, , 表示文件映射的最大长度的低32位。通常均设为0表示磁盘文件的实际长度
.参数 lpName, 整数型, , 指定文件映射对象的名称
.DLL命令 MapViewOfFile, 整数型, "kernel32.dll", "MapViewOfFile", , 将一个文件映射对象映射到当前应用程序空间。成功就返回文件映射在内存中的起始地址
.参数 hFileMappingObject, 整数型, , 文件映射对象的句柄
.参数 dwDesiredAccess, 整数型, , 用API常数表示的对文件映射的访问方式
.参数 dwFileOffsetHigh, 整数型, , 表示文件中的映射起点的高32位。通常均设为0表示从文件的起始处开始映射
.参数 dwFileOffsetLow, 整数型, , 表示文件中的映射起点的低32位。通常均设为0表示从文件的起始处开始映射
.参数 dwNumberOfBytesToMap, 整数型, , 要映射的字节数,通常设为0表示映射整个文件映射对象。
.DLL命令 UnmapViewOfFile, 整数型, "kernel32.dll", "UnmapViewOfFile", , 解除当前应用程序中的一个文件映射对象的映射地址空间。非零表示成功,零表示失败
.参数 lpBaseAddress, 整数型, , 要解除映射的文件映射起始地址。
.DLL命令 GlobalLock, 整数型, "kernel32.dll", "GlobalLock"
.参数 hMem, 整数型
.DLL命令 GlobalHandle, 整数型, "kernel32.dll", "GlobalHandle"
.参数 wMem, 整数型
.DLL命令 OpenFileMapping, 整数型, "kernel32.dll", "OpenFileMappingA", , 打开一个现成的文件映射对象
.参数 dwDesiredAccess, 整数型, , 用API常数表示的对文件映射的访问方式
.参数 bInheritHandle, 整数型, , 返回值对与子进程的继承属性,常设为False;
.参数 lpName, 文本型, , 指定要打开的文件映射对象名称
.DLL命令 GlobalSize, 整数型, "kernel32.dll", "GlobalSize"
.参数 hMem, 整数型
.DLL命令 CopyMemory, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 字节集, 传址
.参数 cb, 整数型
.DLL命令 CopyMemory_s, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 文本型, 传址
.参数 cb, 整数型
.DLL命令 CopyMemory_x, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 小数型, 传址
.参数 cb, 整数型
.DLL命令 CopyMemory_sj, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 双精度小数型, 传址
.参数 cb, 整数型
.DLL命令 CopyMemory_d, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 短整数型, 传址
.参数 cb, 整数型
.DLL命令 CopyMemory_z, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 整数型, 传址
.参数 cb, 整数型
.DLL命令 CopyMemory_c, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 长整数型, 传址
.参数 cb, 整数型
.DLL命令 CopyMemory_r, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 ptr, 整数型
.参数 struct, 日期时间型, 传址
.参数 cb, 整数型
.DLL命令 MoveMemory, 整数型, "kernel32.dll", "RtlMoveMemory", , ""
.参数 ptr, 整数型
.参数 struct, 整数型
.参数 cb, 整数型
.DLL命令 VirtualQuery, 整数型, "kernel32.dll", "VirtualQuery", , ""
.参数 lpAddress, 整数型, , "类型为通用型,请在调试时调整其类型"
.参数 lpBuffer, MEMORY_BASIC_INFORMATION, 传址, ""
.参数 dwLength, 整数型, , ""
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...