如何使用SetFilePointerEx期望的LARGE_INTEGER参数?

时间:2012-11-22 07:18:43

标签: winapi

我正在进行随机文件访问以在其中写入日志记录。稍后,我会根据日志编号访问日志。我使用日志编号来计算记录的偏移量并直接访问它。函数SetFilePointerEx用于设置文件中的当前位置,从那里我可以直接读取记录。

该函数需要LARGE_INTEGER作为参数。如何将LARGE_INTEGER用于SetFilePointerEx函数?要求。笔记说该程序将针对64位操作系统。

1 个答案:

答案 0 :(得分:3)

假设LARGE_INTEGER li;,只需将li.QuadPart设置为文件偏移所需的LONGLONG值,并使用li作为调用中的偏移量参数。或者我错过了一些明显的东西。?

LARGE_INTEGER li, lo={0};
li.QuadPart = yourOffsetValue;

SetFilePointerEx(hFile, li, &lo, FILE_BEGIN);