红联Linux门户
Linux帮助

求教 LINUX下文件数据读取

发布时间:2011-04-20 21:03:41来源:红联作者:neptunesoft
这个是我WINDOWS下的.执行通过了,

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

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

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

共有 5 条评论

  1. neptunesoft 于 2011-04-22 03:46:22发表:

    呵呵,用了一个土办法解决了,代码嘛,原来就是这样写的,看了来LINUX的汇编也不难~

  2. neptunesoft 于 2011-04-21 13:24:05发表:

    不懂C,可否帮我写一个看看

  3. hml1006 于 2011-04-21 11:45:29发表:

    用汇编语言,找麻烦,直接用c多方便

  4. zzcva 于 2011-04-21 08:36:01发表:

    不懂,帮顶

  5. neptunesoft 于 2011-04-21 00:43:23发表:

    [i=s] 本帖最后由 neptunesoft 于 2011-4-21 00:49 编辑 [/i]

    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下这样写好像不对
    请帮我看看错误是什么地方