LZSeek 函数 (lzexpand.h)

将文件指针从起始位置移动指定的字节数。

语法

LONG LZSeek(
  [in] INT  hFile,
  [in] LONG lOffset,
  [in] INT  iOrigin
);

参数

[in] hFile

文件的句柄。

[in] lOffset

移动文件指针所依据的字节数。

[in] iOrigin

指针的起始位置。 此参数须为下列值之一。

含义
0
将文件指针 lOffset 字节从文件开头移动。
1
将文件指针 lOffset 字节从当前位置移动。
2
将文件指针 lOffset 字节从文件末尾移动。

返回值

如果函数成功,则返回值指定从文件开头到新指针位置的偏移量。

如果函数失败,则返回值为LZERROR_* 代码。 这些代码的值小于零。 请注意, LZSeek 既不调用 SetLastError 也不 调用 SetLastErrorEx;因此,它的失败不会影响线程的最后一个错误代码。

下面是 LZSeek 在失败时可能返回的错误代码列表。

返回代码 说明
LZERROR_BADINHANDLE
标识源文件的句柄无效。 无法读取文件。
LZERROR_BADVALUE
其中一个参数超出了可接受的值范围。
LZERROR_GLOBLOCK
无法锁定 LZ 文件句柄。
 

此函数没有扩展的错误信息;不要调用 GetLastError

注解

必须通过调用 LZInitLZOpenFile 函数来检索由 hFile 参数标识的句柄。

在 Windows 8 和 Windows Server 2012 中,此函数由以下技术支持。

技术 支持
服务器消息块 (SMB) 3.0 协议
SMB 3.0 透明故障转移 (TFO)
具有横向扩展文件共享的 SMB 3.0 (SO)
群集共享卷文件系统 (CSV)
弹性文件系统 (ReFS)
 

CsvF 将对压缩文件执行重定向 IO。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 lzexpand.h (包括 Windows.h)
Library Lz32.lib
DLL Lz32.dll

另请参阅

文件压缩和解压缩

文件管理函数

LZInit

LZOpenFile