begin process at 2010 02 10 00:29:36
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Tutoriels

 > AFFICHIER LE CONTENU D'UN REPERTOIR

AFFICHIER LE CONTENU D'UN REPERTOIR


 Information sur la source

Note :
6 / 10 - par 3 personnes
6,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Tutoriels Classé sous :dossier, brrowse, répertoire, folder, naviguer Niveau :Débutant Date de création :11/08/2005 Vu :3 926

Auteur : izou

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

ce code illustre la procedure de recherche de fichiers dans un repertoire, il est en quelque sorte equivalant a la command "DIR" du DOS
je n'ai pas affichier tous les detailles consernant les fichiers(date,taille..)

le code a eté compilé est testé

je ne dit pas que ce code est le parfait example car je l'ai ecrit sans le raffine


Source

  • DONNE SEGMENT
  • MESSAGE DB "ENTREZ LE NOM DU REPERTOIRE A LISTER",10,13,'$'
  • REPERTOIRE DB "LES FICHIER CONTENU DANS ( $"
  • SUIT DB " )SONT",10,13,'$'
  • RETOURE DB 10,13,'$'
  • BUFFER DB 13 DUP(?),'$'
  • EXTANTION DB 256 dup(?)
  • DTA DB 43 DUP(?)
  • ESPACE DB " $"
  • DONNE ENDS
  • CODE SEGMENT
  • ASSUME CS:CODE,DS:DONNE
  • DEBUT:
  • MOV AX,DONNE
  • MOV DS,AX
  • MOV AH,9
  • LEA DX,MESSAGE
  • INT 21H
  • LIRE: ;boucle pour lire la chaine entrer
  • MOV AH,01H ;fct 01h (lire un caractaire et mettre sont code dans AL)
  • INT 21H
  • CMP AL,13 ;si c'est "entrer" on quite la boucle
  • JE AFFICHAGE
  • MOV EXTANTION[SI],AL
  • INC SI
  • JMP LIRE
  • AFFICHAGE:
  • MOV EXTANTION[SI],0
  • MOV AH,9
  • mov dx,offset RETOURE
  • INT 21H
  • MOV AH,1AH ;on deplace la DTA(UNE ZONE QUI CONTIENT LES INFORMATION SUR LE FICHIER)
  • MOV DX,OFFSET DTA
  • INT 21H
  • MOV AH,4EH ;ON CHERCHE LE FICHIER FCT 4EH
  • MOV DX,OFFSET EXTANTION ;L'OFFSET DU BUFFER QUI CONTIENT LE NOM DU FICHIER
  • XOR CX,CX
  • INT 21H
  • push ds
  • pop es
  • CLD
  • mov CX,0
  • LECTURE:
  • JC FIN
  • MOV SI,OFFSET DTA
  • ADD SI,1EH ;A L'@ 1EH DE LA DTA SE TROUVE LE NOM DU FICHIER TROUVER
  • MOV DI,OFFSET BUFFER
  • PUSH CX
  • COPIE:
  • MOV CX,1
  • lodsb
  • stosb
  • MOV AH,9 ; definie la couleur des caractaire (14=jaune)
  • MOV BL,14
  • int 10H
  • MOV DL,AL
  • MOV AH,2 ;fct n°2 sortie d'un caractaire
  • int 21h
  • OR AL,AL
  • JNZ COPIE
  • pop cx
  • INC CX
  • CMP CX,4 ;SI ON A ECRIT 4 NOM DE FICHIER SUR UN LINE ON PASSE A LA LINE SUIVANTE
  • je line
  • MOV AH,9
  • LEA DX,ESPACE
  • INT 21H
  • jmp suivant
  • line:
  • mov ah,9
  • lea dx,retoure
  • int 21h
  • mov CX,0
  • suivant:
  • MOV AH,4FH ;ON CHERCHE LE FICHIER SUIVANT QUI A LES MEME (ATTRIBUE)
  • INT 21H
  • JMP LECTURE
  • FIN:
  • MOV AH,9
  • MOV BL,15 ;couleur blanche
  • int 10H
  • mov ah,4ch ;et on quitte le programme
  • int 21h
  • CODE ENDS
  • END DEBUT
DONNE SEGMENT
MESSAGE     DB "ENTREZ LE NOM DU REPERTOIRE A LISTER",10,13,'$'
REPERTOIRE  DB "LES FICHIER CONTENU DANS ( $"
SUIT        DB "  )SONT",10,13,'$'
RETOURE     DB  10,13,'$'
BUFFER      DB   13 DUP(?),'$'   
EXTANTION   DB   256 dup(?)
DTA         DB   43 DUP(?)
ESPACE      DB   "   $"
DONNE ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DONNE

DEBUT:
   MOV  AX,DONNE
   MOV  DS,AX
   
   MOV    AH,9
   LEA    DX,MESSAGE
   INT    21H
LIRE:               ;boucle pour lire la chaine entrer
   MOV  AH,01H      ;fct 01h (lire un caractaire et mettre sont code dans AL)
   INT  21H
   CMP  AL,13       ;si c'est "entrer" on quite la boucle
   JE   AFFICHAGE
   MOV  EXTANTION[SI],AL
   INC  SI
   JMP  LIRE
AFFICHAGE:
   MOV  EXTANTION[SI],0
   MOV  AH,9
   mov  dx,offset RETOURE 
   INT  21H

   MOV    AH,1AH            ;on deplace la DTA(UNE ZONE QUI CONTIENT LES INFORMATION SUR LE FICHIER)
   MOV    DX,OFFSET DTA
   INT    21H   

   MOV    AH,4EH            ;ON CHERCHE LE FICHIER FCT 4EH
   MOV    DX,OFFSET EXTANTION  ;L'OFFSET DU BUFFER QUI CONTIENT LE NOM DU FICHIER
   XOR    CX,CX
   INT    21H

   push   ds
   pop    es
   CLD
   mov    CX,0
   
LECTURE:
   JC      FIN          
   MOV     SI,OFFSET DTA
   ADD     SI,1EH         ;A L'@ 1EH DE LA DTA SE TROUVE LE NOM DU FICHIER TROUVER	
   MOV     DI,OFFSET BUFFER
   PUSH    CX
COPIE:
   MOV  CX,1   
   lodsb
   stosb
   MOV     AH,9   ; definie la couleur des caractaire (14=jaune)
   MOV     BL,14
   int     10H
   MOV     DL,AL
   MOV     AH,2   ;fct n°2 sortie d'un caractaire 
   int     21h
   OR      AL,AL
   JNZ     COPIE
   pop     cx
   INC     CX
   CMP     CX,4   ;SI ON A ECRIT 4 NOM DE FICHIER SUR UN LINE ON PASSE A LA LINE SUIVANTE
   je      line
   MOV     AH,9
   LEA     DX,ESPACE
   INT     21H
   jmp     suivant

line:
   mov     ah,9
   lea     dx,retoure
   int     21h
   mov     CX,0

suivant:
   MOV     AH,4FH  ;ON CHERCHE LE FICHIER SUIVANT QUI A LES MEME (ATTRIBUE)
   INT     21H
   JMP     LECTURE

FIN:
   MOV     AH,9
   MOV     BL,15 ;couleur blanche
   int     10H
   mov     ah,4ch ;et on quitte le programme
   int     21h
CODE  ENDS
END    DEBUT



 Sources du même auteur

Source avec Zip ANNUAIRE TELEPHONIQUE EN M68K
RECURSIVITE EN ASM

 Sources de la même categorie

Source avec Zip FLOATTOHEX CODE DE BRUNEWS RETRENSCRIS EN ASM PAR MOI par quoi
Source avec Zip [TUTO]PRISE EN MAIN ET CRÉATION DE .EXE À L'AIDE D'UN DÉBUGU... par rt15
Source avec Zip FPU SAMPLE 2. par tomart2005
Source avec Zip STARFIELD, SPHERE, CUBE, ROTATION 3D ET 2D EN UTILISANT LE F... par tomart2005
Source avec Zip REPRÉSENTATION D'UNE SPHÈRE EN 3D (FLAT SHADING) par Nasman

Commentaires et avis

Commentaire de izou le 18/08/2005 16:12:46

ce code accepte les caractaire speciaux du DOS (*)(?)
exp: la  cmd
   *.*
liste les fichier du repertoire courant

Commentaire de viran le 24/10/2005 17:43:33

Joli

Commentaire de eclc12007 le 23/05/2007 14:04:40

comment entre le nom du repertoir

et merci

Commentaire de Pouvoir le 04/03/2008 20:41:27 8/10

bon code
tu peu l'amélioré pour une recherche dans les sous repertoire.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

dll windows [ par tequilasurlaterre ] bonjour a tous  Est il possible de modifier ou de le changer, le fichier index du dossier cookies de windows,sans que windows ne le repare. je v Création et ouverture d'un fichier [ par ahmedbj ] Bonjour, Je suis débutant en Assembleur je viens de faire un petit programme qui crée un fichier, qui l'ouvre en mode lecture et écriture et qui écri


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,858 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales