fileoper.asm
来自「windows下汇编语言 学习汇编语言好助手」· 汇编 代码 · 共 65 行
ASM
65 行
;*************************
;文件:FileOper.asm *
;功能:演示文件操作 *
;*************************
.386p
.model flat,stdcall ;平坦内存模式
;外部过程声明
extrn MessageBoxA:proc
extrn ExitProcess:proc
extrn CreateFileA:proc
extrn ReadFile:proc
extrn WriteFile:proc
extrn CloseHandle:proc
;常量定义
NULL = 0
MB_OK = 0
INVALID_HANDLE_VALUE = -1
GENERIC_READ = 80000000H
GENERIC_WRITE = 40000000H
FILE_SHARE_READ = 1
FILE_SHARE_WRITE = 2
FILE_SHARE_DELETE = 4
OPEN_EXISTING = 3
CREATE_NEW = 1
.data
Caption db 'OK',0
Text db '建立文件、写文件成功',0
ErrCaption db 'ERROR',0
ErrCreate db '建立文件错误',0
ErrWrite db '写文件错误',0
FileContext db '文件操作测试',0
FILELENGTH = $ - FileContext
FileName db 'Testing.txt'
hFile dd ?
align 4
write dd ?
.code
main:
;建立文件
call CreateFileA,offset FileName,GENERIC_WRITE,FILE_SHARE_READ OR FILE_SHARE_WRITE,NULL,CREATE_NEW,NULL,NULL
mov [hFile],eax
cmp eax,INVALID_HANDLE_VALUE
jnz Write
call MessageBoxA,NULL,offset ErrCreate,offset ErrCaption,MB_OK
jmp Exit
Write: ;写文件
call WriteFile,eax,offset FileContext,FILELENGTH,offset write,NULL
cmp eax,0
jnz OK
call CloseHandle ,[hFile]
call MessageBoxA,NULL,offset ErrWrite,offset ErrCaption,MB_OK
jmp Exit
OK: ;显示成功信息
call MessageBoxA,NULL,offset Text,offset Caption,MB_OK
;关闭文件句柄
call CloseHandle ,[hFile]
Exit:
call ExitProcess,0
end main
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?