infoelectronique
Messages postés2Date d'inscriptiondimanche 30 avril 2006StatutMembreDernière intervention22 juillet 2008
-
7 juin 2006 à 19:38
Guilou34
Messages postés142Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention29 janvier 2016
-
9 juin 2006 à 19:44
salut j'ai fait le programme suivant :
.model small
.stack 100h
.data
massque db "*.txt",0
message_ereure db "fichier est introuvable $"
message_non_ereure db "fichier est trouver $"
.code
debut:
mov ax,@data
mov ds,ax
mov ah,4eh ;chercher le premier fichier
mov dx,offset massque
xor cx,cx
chercher_fichier:
int 21h
jc terminer_recherche
mov ah,41h ; effacer le fichier chercher
mov dx,80h+1eh
int 21h
mov ah,09h
mov dx,offset message_non_ereure
int 21h
mov ah,00h
int 16h
mov ax, 4c00h
int 21h
terminer_recherche :
mov ah,09h
mov dx,offset message_ereure
int 21h
mov ax,00h
int 16h
mov ax, 4c00h
int 21h
end debut
cette programme cherche un fichier et il ne le suprime pas il affiche le message quelle a trouver le fichier dans le dossier courant mai il ne la suprime pas j'ai utilisé la fonction 41h je ne sais pourquoi ?
<!-- / message -->,
----
<!-- BEGIN TEMPLATE: postbit_onlinestatus -->
<!-- END TEMPLATE: postbit_onlinestatus -->
<!-- -->,
<!-- controls -->
Guilou34
Messages postés142Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention29 janvier 20161 9 juin 2006 à 19:44
Salut
Si la fonction 4eh trouve un fichier avec un mask déterminé elle retourne, dans le DTA ( Disk transfert area) et à l'offset 1Eh, le nom de ce fichier sous la forme d ’une chaîne ascii terminée par un 0.
Or pour effacer un fichier avec la fonction 41h, ds:dx doit pointer sur un nom de fichier terminé par un 0. Les "wild cards" ne sont pas autorisés.
L’adresse du DTA est donné par la fonction 2fh sous la forme ES :BX
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>
Pour supprimer le premier fichier *.txt, ton programme peut s’ écrire comme suit (après la ligne « jc terminer recherche » :