无法删除 emu 8086 中的文件

Can not delete file in emu 8086

 .model small

.data

filename db "name.txt",0     
err db "error$"
.code          

start:
mov ax,@data
mov ds,ax
;;file is opening
mov ah,3dh
lea dx,filename
mov al,0
int 21h

jc err1
;delete the file not working
 mov ah, 41h
lea dx,filename
int 21h

mov ah,4ch
int 21h

err1: lea dx,err
mov ah,09h
int 21h

end start

我正在尝试从目录中删除文件,但代码不起作用,我可以打开并读取文件但无法删除文件。我的代码有什么问题?

可能您的操作系统不允许删除打开的文件,请尝试关闭它:

HANDLER DW ?        ;◄■■ VARIABLE IN DATA SEGMENT.
...
;;file is opening
mov ah,3dh
lea dx,filename
mov al,0
int 21h     
jc err1
MOV HANDLER, AX ;◄■■ PRESERVE FILE HANDLER.

;CLOSE FILE.
MOV AH, 3EH     ;◄■■
MOV BX, HANDLER ;◄■■ HANDLER OF FILE TO CLOSE.
INT 21H

;delete the file NOW IS working
 mov ah, 41h
lea dx,filename
int 21h