+ -
当前位置:首页 → 问答吧 → 求教 LINUX下文件数据读取

求教 LINUX下文件数据读取

时间:2011-04-20

来源:互联网

这个是我WINDOWS下的.执行通过了,

  push    0
  push    80
  push    3
  push    0
  push    1
  push    80000000
  push    00478924                         ; ASCII "c:\windows\neptune.dat"    要读入的文件
  call    <jmp.&kernel32.CreateFileA>       文件返回句柄放在EAX里了.
  push    51BF                                 
  mov     edx, esp
  push    0
  push    edx
  push    51BF      数据大小
  push    esi          ESI为写入数据的位置,
  push    eax
  call    <jmp.&kernel32.ReadFile>

这样文件的数据都读入了ESI的地址中了.

我想知道的是,在LINUX下应该用什么函数,怎么实现上面的功能.....

作者: neptunesoft   发布时间: 2011-04-20

本帖最后由 neptunesoft 于 2011-4-21 00:49 编辑

push    0               ; oflag
  push    offset aUsrLibNetzoneN ; "/usr/lib/2323/neptune.dat"
  call    _open
  mov     ecx, 522Fh
  mov     edx, esi
  push    ecx             ; nbytes
  push    edx             ; buf
  push    eax             ; fd
  call    _read

我在LINUX下这样写好像不对
请帮我看看错误是什么地方

作者: neptunesoft   发布时间: 2011-04-21