begin process at 2012 05 25 01:42:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Système d'exploitation

 > 

Windows

 > 

accès aux fichiers


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

accès aux fichiers

dimanche 3 septembre 2006 à 21:21:39 | accès aux fichiers

tezca_system

Bonsoir,

Par avance je m'excuse si ma question est un écho à un sujet deja evoqué sur ce site.
Je souhaite manipuler en asm un fichier texte.
Pouvoir lire ce qu'il y a dedans et le récuperer lettre par lettre pour le reécrire ailleurs..dans un autre fichier par exemple...
L'ideal serait d'ouvrir le fichier en binaire j'ai l'impression.

Si vous avez des bouts de codes, des exemples ou des liens ce serait vraiment très explicite de cette manière 

Merci par avance, je continue à chercher de mon côté.

cdt,





lundi 4 septembre 2006 à 00:46:41 | Re : accès aux fichiers

tezca_system

Je suis sur la bonne voie je viens d'ecrire cela:

.386
.model flat, stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib

 

.data
filename db "exemple.txt"


.data?
fileHandle HANDLE ?

.code
start:
        invoke CreateFile,\
  ADDR filename,\
  GENERIC_WRITE,\
                FILE_SHARE_WRITE,\
                NULL,\
  OPEN_EXISTING,\
  FILE_ATTRIBUTE_NORMAL,\
                NULL
 
 mov fileHandle, eax

        invoke CloseHandle, fileHandle
 
 invoke ExitProcess,0

 

end start

lundi 4 septembre 2006 à 09:25:26 | Re : accès aux fichiers

Nasman

Réponse acceptée !

Bonjour tezca_system,

si tu veux un exemple de manipulation de fichiers, ouverture, lecture, écriture, tu peux examiner ma source
http://www.asmfr.com/codes/PROGRAMME-VISUALISATION-ANALYSE-SPECTRALE-FICHIERS-SONS_35923.aspx
Le choix du fichier s'effectue via l'explorateur de fichiers avec l'API GetOpenFileName.
L'ouverture du fichier avec l'API CreateFile et la lecture du fichier avec ReadFile.
 
Pour l'enregistrement on utilise l'API GetSaveFileName, l'ouverture se fait avec CreateFile et l'écriture avec WriteFile.

Seules les API CreateFile et Read/WriteFile sont indispensables. Les deux API GetOpenFileName et GetSaveFileName te permettent de faire apparaitre les deux boites de dialogue qui te permettent de choisir les noms de fichier. Le nom du fichier, le chemin d'accès les extensions sont enregistrés dans une structure OPENFILENAME.

CreateFile a seulement besoin du nom de fichier à manipuler (plus des attributs à indiquer).

A+

mercredi 6 septembre 2006 à 15:25:41 | Re : accès aux fichiers

ToutEnMasm

Réponse acceptée !
Salut,
Pour manipuler des fichiers textes,inutile de réinventer la lune.
Un exemple avec tout ce qu'il faut
creer index pour le html help workshop
Le commentaire est en anglais mais en cas de question,posez la içi
Si par hasard il manque un source,voir mon site.
               ToutEnMasm
jeudi 7 septembre 2006 à 00:44:12 | Re : accès aux fichiers

patatalo

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
salut, 2 solutions possibles: 1 - creer un file mapping qui te permettra d'acceder au fichier par simple acces memoire. (CreateFileMapping, MapViewOfFile) 2 - methode par buffer ( ReadFile,SetFilePointer,... ) qui suppose la mise en oeuvre d'un index. recherche sur msdn, tape ces noms de fonctions dans google. @++
dimanche 10 septembre 2006 à 15:33:30 | Re : accès aux fichiers

tezca_system

Vraiment sympa ces 3 reponses elles sont complémentaires. Je recommande ce post pour tout ceux qui veulent manipuler les fichiers.

merci
dimanche 10 septembre 2006 à 19:16:41 | Re : accès aux fichiers

patatalo

Membre Club Administrateur CodeS-SourceS
salut, petite precision par rapport a ce que j'ai écrit: tu pourrait etre amené a utiliser un index avec un file mapping si ton fichier est vraiment enorme. et tu pourrais ne pas utiliser un index avec ReadFile en combinant ces 3 fonctions: GetFileSize VirtualAlloc ReadFile @++


Cette discussion est classée dans : fichier, fichiers, accès, lettre, avance


Répondre à ce message

Sujets en rapport avec ce message

creation de fichiers [ par walamaru ] Bonjour, voila ma question: je suis actuellement entrain de developper un petit OS, et j'ai reussit a lui permetre de creer des fichier, le probleme Mettre un fichier dans le secteur BOOT [ par Cpcdos ] [b]Bonjour[/b], Excuser moi , j'ai 15 ans, je voudrais savoir comment placer un fichier genre (IO.sys) dans le secteur boot (0x07C0) ?? j'arrive pas format png et asm [ par raoulli ] bonjour a vous. je commence a me demander si il est possible de creer une ressouce png dans un fichier *.rc ! avec l'attribut RCDATA le fichier rc s Activer ou désactiver le partage simple des fichiers avec l'invité de command !! [ par youssef_ramsis1 ] Bonjour a tous !! Je voudrai savoir comment [color=red] Activer ou désactiver le partage simple des fichiers avec l'invité de command !![/color] de g Fichier resource... [ par Stormy ] Stormy. J'explique le problème. Je dispose de certaines sources en asm sous Masm qui reprennent le principe du fichier resource (rsc) en accompagnemen URGENT fichier ??? [ par TRAX44 ] salut,débutant demande aideG besoin de savoir comment gérer des fichier avec et sans interruption ms dos merciTRAX EditBox [ par Bros ] SalutJ'ai une fenetre avec un editbox.Mon programme ouvre un fichier et va afficher dans l'édit box: "Fichier ouvert..."En suite a la ligne en dessous Convertion asm vers hex (ou bin) [ par mistigry ] J'utilise un PIC16F870 avec le compilateur CH Basic V1.2, ce compilateur me fournit des fichier asm (ou bsc) et pour pouvoir transférer le fichier sur


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,624 sec (4)

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