CloseHandle
功能:关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等
应尽可能的使用close,因为它支持vb的差错控制。注意这个函数使用的文件句柄与vb的文件编号是完全不同的。
返回值:非零表示成功,零表示失败。会设置GetLastError
注意:除非对内核对象的所有引用都已关闭,否则该对象不会实际删除
CompareFileTime
功能:根据FILETIME结构的信息,对比两个文件的时间
返回值:两个时间相等,就返回零;如lpFileTime1小于lpFileTime2,返回-1;如lpFileTime2小于lpFileTime1,返回1
CopyFile
功能:复制文件
返回值:非零表示成功,零表示失败。会设置GetLastError
CreateDirectory
功能:创建一个新目录
返回值:非零表示成功,零表示失败。会设置GetLastError
CreateFile
功能:打开和创建文件、管道、邮槽、通信服务、设备以及控制台
返回值:执行成功,则返回文件句柄。INVALID_HANDLE_VALUE表示出错,会设置GetLastError。即使函数成功,但若文件存在,且指定了CREATE_ALWAYS 或 OPEN_ALWAYS,GetLastError也会设为ERROR_ALREADY_EXISTS
CreateFileMapping
功能:创建一个新的文件映射对象
返回值:新建文件映射对象的句柄;零意味着出错。会设置GetLastError。即使函数成功,但倘若返回的句柄属于一个现成的文件映射对象,那么GetLastError也会设置成ERROR_ALREADY_EXISTS。在这种情况下,文件映射的长度就是现有对象的长度,而不是这个函数指定的尺寸
DeleteFile
功能:删除指定文件
返回值:非零表示成功,零表示失败。会设置GetLastError
DeviceIoControl
功能:对设备执行指定的操作
返回值:非零表示成功,零表示失败。会设置GetLastError
DosDateTimeToFileTime
功能:将DOS日期和时间值转换成一个 win32 FILETIME 值
返回值:非零表示成功,零表示失败。会设置GetLastError
FileTimeToDosDateTime
功能:将一个 win32 FILETIME 值转换成DOS日期和时间值
返回值:非零表示成功,零表示失败。会设置GetLastError
FileTimeToLocalFileTime
功能:将一个FILETIME结构转换成本地时间
返回值:非零表示成功,零表示失败。会设置GetLastError
FileTimeToSystemTime
功能:根据一个FILETIME结构的内容,装载一个SYSTEMTIME结构
返回值:非零表示成功,零表示失败。会设置GetLastError
FindClose
功能:关闭由FindFirstFile函数创建的一个搜索句柄
返回值:非零表示成功,零表示失败。会设置GetLastError
FindFirstFile
功能:根据文件名查找文件
返回值:执行成功,返回一个搜索句柄。如果出错,返回一个INVALID_HANDLE_VALUE常数,一旦不再需要,应该用FindClose函数关闭这个句柄
FindNextFile
功能:根据调用FindFirstFile函数时指定的一个文件名查找下一个文件
返回值:非零表示成功,零表示失败。会设置GetLastError
FlushFileBuffers
功能:针对指定的文件句柄,刷新内部文件缓冲区
返回值:非零表示成功,零表示失败。会设置GetLastError
FlushViewOfFile
功能:将写入文件映射缓冲区的所有数据都刷新到磁盘
返回值:非零表示成功,零表示失败。会设置GetLastError
GetBinaryType
功能是:判断文件是否可以执行
返回值:非零表示成功,零表示失败
GetCompressedFileSize
功能:判断一个压缩文件在磁盘上实际占据的字节数
返回值:返回文件长度。&HFFFFFFFF表示出错。注意如lpFileSizeHigh不为NULL,且结果为&HFFFFFFFF,那么必须调用GetLastError,判断是否实际发生了一个错误,因为这是一个有效的结果
GetCurrentDirectory
功能:在一个缓冲区中装载当前目录
返回值:装载到lpBuffer的字节数。如nBufferLength的长度不够,不足以容纳目录,则返回值是必要的缓冲区长度(要求至少这个长度),其中包括空中止字符。零表示失败。会设置GetLastError
GetDiskFreeSpace
功能:获取与一个磁盘的组织有关的信息,以及了解剩余空间的容量
返回值:非零表示成功,零表示失败。会设置GetLastError
GetDiskFreeSpaceEx
功能:获取与一个磁盘的组织以及剩余空间容量有关的信息
返回值:非零表示成功,零表示失败。会设置GetLastError
GetDriveType
功能:判断一个磁盘驱动器的类型
返回值:驱动器不能识别,则返回零。如指定的目录不存在,则返回1。如执行成功,则用下述任何一个常数指定驱动器类型:DRIVE_REMOVABLE, DRIVE_FIXED, DRIVE_REMOTE, DRIVE_CDROM 或 DRIVE_RAMDISK
GetExpandedName
功能:取得一个压缩文件的全名
返回值:1表示成功,LZERROR_BADVALUE 表示失败
GetFileAttributes
功能:判断指定文件的属性
返回值:-1表示出错。如返回包含了标志的一个Long值,则指定文件的属性。其中的标志对应于带有FILE_ATTRIBUTE_???前缀的常数。具体参考BY_HANDLE_FILE_INFORMATION结构的File Attribute Types table表格
GetFileInformationByHandle
功能:这个函数提供了获取文件信息的一种机制:在一个BY_HANDLE_FILE_INFORMATION结构中装载与文件有关的信息
返回值:非零表示成功,零表示失败。会设置GetLastError
GetFileSize
功能:判断文件长度
返回值:返回文件长度。&HFFFFFFFF表示出错。注意如lpFileSizeHigh不为NULL,且结果为&HFFFFFFFF,那么必须调用GetLastError,判断是否实际发生了一个错误,因为这是一个有效的结果
GetFileTime
功能:取得指定文件的时间信息
返回值:非零表示成功,零表示失败。会设置GetLastError
GetFileType
功能:在给出文件句柄的前提下,判断文件类型
返回值:
FILE_TYPE_UNKNOWN 文件类型未知
FILE_TYPE_DISK 属于磁盘文件
FILE_TYPE_CHAR 文件是一个控制台或打印机
FILE_TYPE_PIPE 文件是个管道
GetFileVersionInfo
功能:从支持版本标记的一个模块里获取文件版本信息
返回值:非零表示成功,零表示失败。会设置GetLastError
GetFileVersionInfoSize
功能:针对包含了版本资源的一个文件,判断容纳文件版本信息需要一个多大的缓冲区
返回值:容纳文件的版本资源所需的缓冲区长度。如文件不包含版本信息,则返回一个0值。会设置GetLastError
GetFullPathName
功能:获取指定文件的完整路径名
返回值:装载到lpBuffer中的字符数量(排除空中止字符)。如缓冲区的长度不足以容下完整的路径,则返回值就是要求的缓冲区大小。零表示失败。会设置GetLastError
GetLogicalDrives
功能:判断系统中存在哪些逻辑驱动器字母
返回值:这个结构中的二进制位标志着存在哪些驱动器。其中,位0设为1表示驱动器A:存在于系统中;位1设为1表示存在B:驱动器;以次类推
GetLogicalDriveStrings
功能:获取一个字串,其中包含了当前所有逻辑驱动器的根驱动器路径
返回值:装载到lpBuffer的字符数量(排除空中止字符)。如缓冲区的长度不够,不能容下路径,则返回值就变成要求的缓冲区大小。零表示失败。会设置GetLastError
GetOverlappedResult
功能:判断一个重叠操作当前的状态
返回值:非零表示成功,零表示失败。会设置GetLastError。如bWait为FALSE,而且异步操作仍在执行,则函数回返回零,而GetLastError会设置成ERROR_IO_INCOMPLETE
GetPrivateProfileInt
功能:为初始化文件(.ini文件)中指定的条目获取一个整数值
返回值:找到的条目的值;如指定的条目未找到,就返回默认值。如找到的数字不是一个合法的整数,函数会返回其中合法的一部分。如,对于“xyz=55zz”这个条目,函数返回55。这个函数也能理解采用标准C语言格式的十六进制数字:用0x作为一个十六进制数字的前缀——所以0x55ab等价于vb的&H55AB
GetPrivateProfileSection
功能:获取指定小节(在.ini文件中)所有项名和值的一个列表
返回值:装载到lpReturnedString缓冲区的字符数量。如缓冲区的容量不够大,不能容下所有信息,就返回nSize-2
GetPrivateProfileString
功能:为初始化文件中指定的条目取得字串
返回值:复制到lpReturnedString缓冲区的字节数量,其中不包括那些NULL中止字符。如lpReturnedString缓冲区不够大,不能容下全部信息,就返回nSize-1(若lpApplicationName或lpKeyName为NULL,则返回nSize-2)
GetProfileInt
功能:取得win.ini初始化文件中指定条目的一个整数值
返回值:找到条目的值;如指定的条目未找到,就返回默认值。如找到的数字不是一个合法的整数,函数就会返回其中合法的一部分。例如,对于“xyz=55zz”这个条目,函数会返回55。这个函数也能理解采用标准C语言格式的十六进制数字:用0x作为一个十六进制数字的前缀——所以0x55ab等价于vb的&H55AB
GetProfileSection
功能:获取指定小节(在win.ini文件中)所有项名和值的一个列表
返回值:装载到lpReturnedString缓冲区的字符数量。如缓冲区的长度不足以容下所有信息,则返回nSize-2
GetProfileString
功能:为win.ini初始化文件中指定的条目取得字串
返回值:复制到lpReturnedString缓冲区的字节数量,其中不包括那些NULL中止字符。如lpReturnedString缓冲区不够大,不能容下全部信息,就返回nSize-1(若lpAppName或lpKeyName为NULL,则返回nSize-2)
GetShortPathName
功能:获取指定文件的短路径名
返回值:装载到lpszShortPath缓冲区的字符数量。如lpszShortPath的长度不足,不能容下文件名,就返回需要的缓冲区长度
GetSystemDirectory
功能:取得Windows系统目录(即System目录)的完整路径名
返回值:装载到lpBuffer缓冲区的字符数量。如lpBuffer不够大,不能容下文件名,则返回要求的缓冲区长度
GetTempFileName
功能:这个函数包含了一个临时文件的名字,它可由应用程序使用
返回值:最终用于生成文件名的wUnique数字的值。如wUnique参数不为零,这就是参数的值。零表示失败。会设置GetLastError
GetTempPath
功能:获取为临时文件指定的路径
返回值:装载到lpBuffer的字符数。如当前缓冲区的长度不够,不能容下整个路径,则返回lpBuffer需要的长度。零表示失败。会设置GetLastError
GetVolumeInformation
功能:获取与一个磁盘卷有关的信息
返回值:非零表示成功,零表示失败。会设置GetLastError
GetWindowsDirectory
功能:获取Windows目录的完整路径名
返回值:复制到lpBuffer的一个字串的长度。如lpBuffer不够大,不能容下整个字串,就会返回lpBuffer要求的长度。零表示失败。会设置GetLastError
hread
功能:将文件中的数据读入内存缓冲区
返回值:返回实际读入的字节数。HFILE_ERROR意味着函数执行出错。如这个数字小于wBytes,则表明早已抵达了文件的末尾。会设置GetLastError
注意:在win16中用于读取大于64KB的数据块。但win32的文件I/O函数并不受这个64KB的限制
hwrite
功能:将数据从内存缓冲区写入一个文件
返回值:写入的字节数。HFILE_ERROR意味着函数执行出错。如这个数字小于wBytes,则表明早已抵达了文件的末尾。会设置GetLastError
注意:在win16中用于写入大于64KB的数据块。但win32的文件I/O函数并不受这个64KB的限制
lclose
功能:关闭指定的文件
返回值:非零表示成功,零表示失败。会设置GetLastError
lcreat
功能:创建一个文件
返回值:执行成功,返回打开文件的句柄。如果出错,则返回HFILE_ERROR.
注意:该函数会打开已由其他应用程序打开的文件,所以使用它时要小心。win32的CreateFile函数已取代了这个函数。
llseek
功能:设置文件中进行读写的当前位置
返回值:返回一个新位置,设置成从文件起始处算起的一个偏移量。HFILE_ERROR表示函数执行出错。会设置GetLastError
注意:参考SetFilePointer函数,认识能对较大文件进行处理的一个近似函数
LockFile
功能:锁定文件的某一部分,使其不与其他应用程序共享
返回值:非零表示成功,零表示失败。会设置GetLastError
注意:锁定的区域不能进行重叠操作。由不同的操作系统决定,可能要求先运行share.exe才能保证该函数正常工作锁定的区域不能进行重叠操作。由不同的操作系统决定,可能要求先运行share.exe才能保证该函数正常工作
LockFileEx
功能:与LockFile相似,只是它提供了更多的功能
返回值:非零表示成功,零表示失败。会设置GetLastError
注意:锁定区域不可重叠操作(即多个进程同时操作)
lopen
功能:以二进制模式打开指定的文件
返回值:执行成功,返回打开文件的句柄。HFILE_ERROR表示出错。会设置GetLastError
注意:CreateFile函数在win32下提供了更多的功能
lread
功能:将文件中的数据读入内存缓冲区
返回值:返回实际读入的字节数。HFILE_ERROR意味着函数执行出错。如这个数字小于wBytes,则表明早已抵达了文件的末尾。会设置GetLastError
lwrite
功能:将数据从内存缓冲区写入一个文件
返回值:写入的字节数。HFILE_ERROR意味着函数执行出错。如这个数字小于wBytes,则表明早已抵达了文件的末尾。会设置GetLastError
LZClose
功能:关闭由LZOpenFile 或 LZInit函数打开的一个文件
返回值:
LZCopy
功能:复制一个文件
返回值:执行成功,返回目标文件的大小,以字节为单位。如执行出错,会返回小于零的一个常数,如下:
LZERROR_BADINHANDLE 源文件无效
LZERROR_BADOUTHANDLE 目标文件无效
LZERROR_GLOBALLOC 内部解压缓冲区的内存容量不足
LZERROR_GLOBLOCK 内部解压缓冲区的句柄无效
LZERROR_READ 无效的源文件格式
LZERROR_UNKNOWNALG 解压DLL不能识别源文件采用的压缩算法
LZERROR_WRITE 在磁盘上写入输出文件时出错,通常是由于磁盘空间不足造成的
LZInit
功能:这个函数用于初始化内部缓冲区
返回值:由lz32.dll库使用的、那个文件的一个特殊句柄。这个文件句柄兼容于LZCopy, CopyLZFiles, LZRead 和 LZSeek函数。如果出错,该函数会返回下表列出的出错代码之一。注意完成后一定用LZClose关闭这个句柄
注意:最多只能同时打开16个压缩文件句柄
LZOpenFile
功能:该函数能执行大量不同的文件处理,而且兼容于压缩文件
返回值:函数执行成功,且样式(style)参数不为OF_READ,就返回常规的文件句柄,具体请参考OpenFile函数的说明。如样式参数为OF_READ,而且文件是压缩的,就会返回一个特殊的文件句柄,以便由LZCopy, LZRead 和 LZSeek函数使用。如出错,返回如下表所示的一个常数:
LZERROR_BADINHANDLE 源文件无效
LZERROR_BADOUTHANDLE 目标文件无效
LZERROR_GLOBALLOC 内部解压缓冲区的内存容量不足
LZERROR_GLOBLOCK 内部解压缓冲区的句柄无效
LZERROR_READ 无效的源文件格式
LZERROR_UNKNOWNALG 解压DLL不能识别源文件采用的压缩算法
LZERROR_WRITE 在磁盘上写入输出文件时出错,通常是由于磁盘空间不足造成的
注意:参考OpenFile函数
LZRead
功能:将数据从文件读入内存缓冲区
返回值:实际读入的字节数。如这个数字小于cbread,表明早已抵达了文件的末尾。如出错,返回下表列出的常数之一:
LZERROR_BADINHANDLE 源文件无效
LZERROR_BADOUTHANDLE 目标文件无效
LZERROR_GLOBALLOC 内部解压缓冲区的内存容量不足
LZERROR_GLOBLOCK 内部解压缓冲区的句柄无效
LZERROR_READ 无效的源文件格式
LZERROR_UNKNOWNALG 解压DLL不能识别源文件采用的压缩算法
LZERROR_WRITE 在磁盘上写入输出文件时出错,通常是由于磁盘空间不足造成的
LZSeek
功能:设置一个文件中进行读写的当前位置
返回值:返回一个新位置,采用从文件起始处计算的字节偏移量。如出错,返回下表列出的常数之一:
LZERROR_BADINHANDLE 源文件无效
LZERROR_BADOUTHANDLE 目标文件无效
LZERROR_GLOBALLOC 内部解压缓冲区的内存容量不足
LZERROR_GLOBLOCK 内部解压缓冲区的句柄无效
LZERROR_READ 无效的源文件格式
LZERROR_UNKNOWNALG 解压DLL不能识别源文件采用的压缩算法
LZERROR_WRITE 在磁盘上写入输出文件时出错,通常是由于磁盘空间不足造成的
MapViewOfFile
功能:将一个文件映射对象映射到当前应用程序的地址空间
返回值:文件映射在内存中的起始地址。零表示出错。会设置GetLastError
注意:dwFileOffsetLow和dwFileOffsetHigh必须反映一个偏移距离,它由系统的内存分配精度决定。例如,假设系统的内存精度是64KB(即最小分配单位是64KB),则这些值必须是64KB的整数倍。大多数应用程序都简单的用零从文件的起始处开始映射。lpBaseAddress也必须是内存分配精度的整数倍
MoveFile
功能:移动文件
返回值:非零表示成功,零表示失败。会设置GetLastError
OpenFile
功能:这个函数能执行大量不同的文件操作
返回值:执行成功,返回文件句柄。注意文件句柄可能是无效的;如果出错,函数会返回HFILE_ERROR;此时,由lpReOpenBuff指定的OFSTRUCT结构的nErrCode会设置成发生的错误。会设置GetLastError
OpenFileMapping
功能:打开一个现成的文件映射对象
返回值:指定文件映射对象的句柄。零表示出错。会设置GetLastError
QueryDosDevice
功能:在Windows NT中,DOS设备名会映射成NT系统设备名。该函数可判断当前的设备映射情况
返回值:零表示出错。如执行成功,返回保存到lpTargetPath的字符数。会设置GetLastError
ReadFile
功能:从文件中读出数据
返回值:非零表示成功,零表示失败。会设置GetLastError。如启动的是一次异步读操作,则函数会返回零值,并将ERROR_IO_PENDING设置成GetLastError的结果。如结果不是零值,但读入的字节数小于nNumberOfBytesToRead参数指定的值,表明早已抵达了文件的结尾
ReadFileEx
功能:与ReadFile相似,只是它只能用于异步读操作,并包含了一个完整的回调
返回值:非零表示成功,零表示失败。会设置GetLastError
RegCloseKey
功能:关闭系统注册表中的一个项(或键)
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegConnectRegistry
功能:访问远程系统的部分注册表
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegCreateKey
功能:在指定的项下创建或打开一个项
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegCreateKeyEx
功能:在指定项下创建新项的更复杂的方式。在Win32环境中建议使用这个函数
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegDeleteKey
功能:删除现有项下方一个指定的子项
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegDeleteValue
功能:删除指定项下方的一个值
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegEnumKey
功能:枚举指定项的子项。在Win32环境中应使用RegEnumKeyEx
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegEnumKeyEx
功能:枚举指定项下方的子项
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegEnumValue
功能:枚举指定项的值
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegFlushKey
功能:将对项和它的子项作出的改动实际写入磁盘
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
注意:有些操作系统会将对注册表的修改延迟写入磁盘,以便保持系统的高性能。这个函数的作用就是确定将数据实际写入磁盘。但通常,应尽量避免使用这个函数,因为它可能严重影响一个应用程序的性能
RegGetKeySecurity
功能:获取与一个注册表项有关的安全信息
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
注意:适用于Windows NT平台
RegLoadKey
功能:从以前用RegSaveKey函数创建的一个文件里装载注册表信息
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegNotifyChangeKeyValue
功能:注册表项或它的任何一个子项发生变化时,用这个函数提供一种通知机制
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegOpenKey
功能:打开一个现有的注册表项
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegOpenKeyEx
功能:打开一个现有的项。在win32下推荐使用这个函数
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegQueryInfoKey
功能:获取与一个项有关的信息
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码。如一个缓冲区的长度不够,不能容下返回的数据,则函数会返回ERROR_MORE_DATA
RegQueryValue
功能:取得指定项或子项的默认(未命名)值
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegQueryValueEx
功能:获取一个项的设置值
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegReplaceKey
功能:用一个磁盘文件保存的信息替换注册表信息;并创建一个备份,在其中包含当前注册表信息
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegRestoreKey
功能:从一个磁盘文件恢复注册表信息
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegSaveKey
功能:将一个项以及它的所有子项都保存到一个磁盘文件
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegSetKeySecurity
功能:设置指定项的安全特性
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegSetValue
功能:设置指定项或子项的默认值
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegSetValueEx
功能:设置指定项的值
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RegUnLoadKey
功能:卸载指定的项以及它的所有子项
返回值:零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
RemoveDirectory
功能:删除指定目录
返回值:非零表示成功,零表示失败。会设置GetLastError
SearchPath
功能:查找指定文件
返回值:装载到lpBuffer缓冲区的字符数。如缓冲区长度不足,则返回缓冲区必要的长度。零表示失败。会设置GetLastError
注意:参考GetFullPathName函数
SetCurrentDirectory
功能:设置当前目录
返回值:非零表示成功,零表示失败。会设置GetLastError
SetEndOfFile
功能:针对一个打开的文件,将当前文件位置设为文件末尾
返回值:非零表示成功,零表示失败。会设置GetLastError
SetFileAttributes
功能:设置文件属性
返回值:非零表示成功,零表示失败。会设置GetLastError
SetFilePointer
功能:在一个文件中设置当前的读写位置
返回值:返回一个新位置,它采用从文件起始处开始算起的一个字节偏移量。HFILE_ERROR意味着出错。会设置GetLastError
SetFileTime
功能:设置文件的创建、访问及上次修改时间
返回值:非零表示成功,零表示失败。会设置GetLastError
SetHandleCount
功能:这个函数不必在win32下使用;即使使用,也不会有任何效果
返回值:
注意:这个函数不必在win32下使用;即使使用,也不会有任何效果
SetVolumeLabel
功能:设置一个磁盘的卷标(Label)
返回值:TRUE(非零)表示成功,否则返回零。会设置GetLastError
SystemTimeToFileTime
功能:根据一个FILETIME结构的内容,载入一个SYSTEMTIME结构
返回值:非零表示成功,零表示失败。会设置GetLastError
UnlockFile
功能:解除对一个文件的锁定
返回值:非零表示成功,零表示失败。会设置GetLastError
注意:解锁的文件区域必须与以前锁定时设置的区域完全相符。文件关闭前,应用程序应确定已解除了对任何区域的锁定。参考LockFile了解进一步的情况
UnlockFileEx
功能:解除对一个文件的锁定
返回值:非零表示成功,零表示失败。会设置GetLastError
注意:解锁的文件区域必须与以前锁定时设置的区域完全相符。文件关闭前,应用程序应确定已解除了对任何区域的锁定。参考 LockFileEx了解进一步的情况
UnmapViewOfFile
功能:在当前应用程序的内存地址空间解除对一个文件映射对象的映射
返回值:非零表示成功,零表示失败。会设置GetLastError
VerFindFile
功能:用这个函数决定一个文件应安装到哪里
返回值:
VFF_CURNEDEST 指出文件现有版本不应在由szDestDir参数指定的目录中,那个目录是由函数建议安装新版本的地方
VFF_FILEINUSE 指出现有文件当时正在使用,而且不要在此时删除
VFF_BUFFTOOSMALL 指出szDestDir或szCurDir缓冲区的一个或两个都太小,不足以容下目录名
VerInstallFile
功能:用这个函数安装一个文件。它利用由VerFindFile函数提供的信息决定将文件安装到哪里。这个函数首先会比较两个文件的版本标记。如源文件是最新和兼容的版本,则将源文件复制成目标目录的一个临时文件——如文件处于压缩状态,则同时将其解压。随后,将文件的现有版本删除掉,再对临时文件进行重名处理,使符合目标文件名
返回值:返回一个整数,其中包含了VerInstallFile结果常数表里列出的一个或多个常数的组合
VerLanguageName
功能:这个函数能根据16位语言代码获取一种语言的名称。利用版本资源中的语言代码,可以判断出一个文件编写时采用的语言格式。表格“win32支持的语言代码”对win32支持的各种语言代码进行了总结
返回值:装载到szLang缓冲区的字符数量。如缓冲区的容量不够,不能容下完整的名称,则函数返回需要的缓冲区大小。零表示出错
VerQueryValue
功能:这个函数用于从版本资源中获取信息。调用这个函数前,必须先用GetFileVersionInfo函数获取版本资源信息。这个函数会检查资源信息,并将需要的数据复制到一个缓冲区里
返回值:TRUE(非零)表示成功,如请求的信息不存在,或pBlock不属于有效版本信息,那就返回一个零
注意:如lplpBuffer参数为"\StringFileInfo\....",缓冲区里就会载入一个整数数组。每一对整数都代表一种语言和代码页,它们描绘了可用的字串信息。通过用下面这三个部分指定一个字串,
从而获得StringFileInfo字串数据:"\StringFileInfo\languagecodepage\stringname",其中languagecodepage(语言代码页)是采用字串形式的一个8字符十六进制数字。
如翻译表中的语言代码页条目是&H04090000,那么这个字串就应该是"04090000"。stringname(字串名)指定的是一个字串名。这个参数的一个例子如下:
"\StringFileInfo\04090000\CompanyName"
WriteFile
功能:将数据写入一个文件
返回值:TRUE(非零)表示成功,否则返回零。会设置GetLastError
注意:并不是每种操作系统都支持在任何类型的设备上进行异步操作。windows 95不支持对磁盘文件的重叠读取操作
WriteFileEx
功能:与WriteFile类似,只是它只能用于异步写操作,并包括了一个完整的回调
返回值:非零表示成功,否则返回零。会设置GetLastError
注意:并不是每种操作系统都支持在任何类型的设备上进行异步操作。windows 95不支持对磁盘文件的重叠读取操作
WritePrivateProfileSection
功能:为一个初始化文件(.ini)中指定的小节设置所有项名和值
返回值:非零表示成功,零表示失败。会设置GetLastError
WritePrivateProfileString
功能:在初始化文件指定小节内设置一个字串
返回值:非零表示成功,零表示失败。会设置GetLastError
WriteProfileSection
功能:为Win.ini初始化文件中一个指定的小节设置所有项名和值
返回值:非零表示成功,零表示失败。会设置GetLastError
WriteProfileString
功能:在Win.ini初始化文件指定小节内设置一个字串
返回值:非零表示成功,零表示失败。会设置GetLastError
注意:对Win.ini文件的改动可能影响其他应用程序。如修改了正由其他应用程序使用的小节,一定要向所有窗口都发送一条WM_WININICHANGE消息