汇编语言SetFilePointer函数:移动打开文件的位置指针

函数 SetFilePointer 移动打开文件的位置指针。该函数可以用于向文件添加数据,或是执行随机访问记录处理:

SetFilePointer PROTO,
    hFile:HANDLE,                                          ;文件句柄
    lpDistanceToMove:SDWORD,                  ;指针移动 字节数
    lpDistanceToMoveHigh:PTR SDWORD,   ;指针移动字节数,高双字
    dwMoveMethod:DWORD                        ;起点

若函数调用失败,则返回值为零。dwMoveMode 指定文件指针移动的起点,选择项为 3 个预定义符号:FILE_BEGIN、FILE_CURRENT 和 FILE_END。

移动距离本身为 64 位有符号整数值,分为两个部分:
  • lpDistanceToMove:低 32 位
  • lpDistanceToMoveHigh:含有高 32 位的变量指针

如果 lpDistanceToMoveHigh 为空,则只用 lpDistanceToMove 的值来移动文件指针。例如,下面的代码准备添加到一个文件末尾:

INVOKE SetFilePointer,
    fileHandle,        ;文件句柄
    0,                      ;距离低32位
    0,                      ;距离高32位
    FILE_END          ;移动模式

爱面试的程序媛,一个分享面试经验的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,定时分享程序员面试的那点事。

面试如何造火箭?工作如何拧螺丝?都在这个公号哦。

扫描二维码关注公众号,免费领取价值 1000 元的求职面试资料(限时免费)!

当你决定关注「爱面试的程序媛」,你已然超越了90%的程序员!

爱面试的程序媛二维码
微信扫描二维码关注