begin process at 2010 02 09 23:10:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Système

 > 

Fichier & Disque

 > 

un probléme avec le hex et "save"


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

un probléme avec le hex et "save"

mercredi 1 juillet 2009 à 15:26:46 | un probléme avec le hex et "save"

Smith4400

slut les Mec !!
je suis un debutant dans le delphi et j'ai un problaime avec les fichier bin et le hex
je voudrais faire un programme pour ecrire des valeur hex dans un fichier bin
mais j'arrive pas a accomplire ce projet  car  je suis débutant
mon  porgramme  doit  avoir  un tedit dont on ecris les valeur et un bouttons pour sauvgarder cette chaine de caracteres hex....
comme cette chaine
CF 7E 35 0B AB 0B 88 34 C8 40 9A 51 3A BB D8 7B
aider moi
merci
mercredi 1 juillet 2009 à 15:31:26 | Re : un probléme avec le hex et "save"

Bacterius

Membre Club
Réponse acceptée !
Je ne vois pas trop ce que tu veux faire ... Tu veux créer un fichier qui contienne les valeurs hexadécimales que tu as entrées ? Faut-il ajouter à ce fichier les nouvelles valeurs ?

Cordialement, Bacterius !
mercredi 1 juillet 2009 à 15:40:24 | Re : un probléme avec le hex et "save"

Smith4400

Bacterius
oui, comment faire ça???
avec un Tedit et un fichier bin vide par exemlpe...
merci alavance
mercredi 1 juillet 2009 à 18:39:00 | Re : un probléme avec le hex et "save"

Bacterius

Membre Club
La routine d'écriture :

procedure WriteHex(FilePath: String; Value: Byte);
Var
H: HFILE;
Tmp: Longword;
begin
H := CreateFile(PChar(FilePath), GENERIC_READ, FILE_SHARE_READ,  nil, OPEN_EXISTING, 0, 0);
if H <> HFILE_ERROR then
  begin
   SetFilePointer(H, 0, nil, FILE_END);
   WriteFile(H, Value, SizeOf(Byte), Tmp, nil);
   CloseHandle(H);
  end;
end;

_______________________________________________


La routine de lecture :

function ReadHex(FilePath: String; Pos: Longword): Byte;
Var
H: HFILE;
Tmp: Longword;
begin
Result := 0;
H := CreateFile(PChar(FilePath), GENERIC_READ, FILE_SHARE_READ,  nil, OPEN_EXISTING, 0, 0);
if H <> HFILE_ERROR then
  begin
   SetFilePointer(H, Pos, nil, FILE_BEGIN);
   ReadFile(H, Result, SizeOf(Byte), Tmp, nil);
   CloseHandle(H);
  end;
end;

_______________________________________________

La méthode pour le bouton :

procedure TForm1.Button1Click(Sender: TObject);
begin
{ MonFichier contient l'adresse sur disque de ton fichier }
WriteHex(MonFichier, StrToInt(Format('$%s', [Edit1.Text])));
end;

_______________________________________________


Pas de gestion d'erreurs concernant le TEdit (si tu entres des valeurs correctes, comme AB, E3, F9, tout va bien, mais si tu entres 'KHFJHFK' il y aura une exception).

Pour lire une valeur hexadécimale, il suffit d'utiliser la fonction ReadHex, en passant la position de la valeur que tu désires lire dans le paramètre Pos (0, première valeur / 1, 2eme valeur / 2, 3eme valeur ...)

Je n'ai pas testé, mais il me semble que cela devrait marcher.

Cordialement, Bacterius !
mercredi 1 juillet 2009 à 18:41:24 | Re : un probléme avec le hex et "save"

Bacterius

Membre Club
Je vais faire une source avec ce que tu désires faire, mais en plus général. Elle sera disponible avant le week-end je pense ... n'oublies pas d'y jeter un oeil !

Cordialement, Bacterius !
mercredi 1 juillet 2009 à 19:37:26 | Re : un probléme avec le hex et "save"

cirec

Membre Club Administrateur CodeS-SourceS
Utilise les Stream à la place CreateFile
c'est mieux, plus simple d'utilisation et sécurisé au niveau des allocations
toutes les procédures utiles y sont déjà implémentées !!

 
@+
Cirec

jeudi 2 juillet 2009 à 10:54:56 | Re : un probléme avec le hex et "save"

Smith4400

/// Bacterius ////
merci mon ami, j'attendrais le source pour mieux  comprendre....
merci infinément...
jeudi 2 juillet 2009 à 11:17:50 | Re : un probléme avec le hex et "save"

Bacterius

Membre Club
Bon je prépare un éditeur héxadécimal (avec TStream, sous le conseil de Cirec) ...

Cordialement, Bacterius !
jeudi 2 juillet 2009 à 12:07:58 | Re : un probléme avec le hex et "save"

Smith4400

Bacterius
Thx frero mais je prefere un exemple tres facile pour me facilité la vie
par exemple
ouvrir un fichier bin tres simple et ecrire des valeurs hexdemical
c tous
j'atend tous tes sujet dans ce comaine

Smith
jeudi 2 juillet 2009 à 12:22:05 | Re : un probléme avec le hex et "save"

cirec

Membre Club Administrateur CodeS-SourceS
Ce qui serait bien c'est de ne PAS attendre le travail des autres
mais essayer de le faire toi même ... la leçon rentre beaucoup mieux dans la tête de cette manière.

Pour la facilité voir les Stream

 
@+
Cirec


1 2

Cette discussion est classée dans : fichier, valeur, probléme, hex, save


Répondre à ce message

Sujets en rapport avec ce message

comment chercher une valeur hex dans un fichier binaire "file of byte" [ par fartotodz2004 ] salut pour tous je cherche une fonction qui cherche une valeur hexa (par ex:longword $FFE6ABC9) dans un fichier binaire, jai trouver des fontions pour Delphi-Excel [ par sammon ] Bonjour,j'ai fais un traitement pour importer des données dans un fichier excel vers des fichier dbf.Le fichier excel généreé automatiquement par AS40 vérifier qu'un fichier ini est conforme [ par zwyx ] Bonjour à tous,Quand on lit une valeur dans un fichier ini, de type TIniFile, on donne en argument une valeur à renvoyer si la section, clé, ou valeur Probléme d'affectation d'une valeur à Itemindex dans des combo box [ par cevezo ] Bonjour je rencontre un probléme avec l'affectation d'une valeur à itemindex sur des combobox... L'affectation ne marche pas à tous les coups c à d qu LIRE/ECRIRE dans un fichier texte [ par Bouboukick ] bonjour,J'aimerais lire un fichier TEXTE contenant juste un paramètre numérique qui pourra avoir comme valeurs suivantes :1200, 2400, 4800, 9600, 1920 afficher une image dans une zone Timage [ par jeanjeandada ] Bonjour, Je suis débutant sur Delphi mais j'ai regardé pas mal de tutorial...Voici mon probléme :Je souhaite afficher une image dans une zone Timage s Probléme avec l'encodage d'un document Xml [ par Jbensimoh ] Salut, j'utilise un XmlDocument pour lire et créer des fichier xml:la lecture et l'ecriture ce fait comme je le veux mais quand je change le paramétr Valeur hexa... [ par viva ] bonjour,Je n'arrive pas à convertir une valeur hexa en dec qui depasse 8 caractères ! est-il possible ? la calculatrice de windows le peut !? avec (Qm fichier texte [ par sraverdy ] Bonjour je désire récupérer le valeur entre le caractére 59 et 63 soit '418' dans un fichier texte ,donc une  partie de la chaine suivante :22/07/2006 Lire une valeur dans un fichier INI [ par bionicleman ] Bonjour,J'ai un problème avec mon projet, en quelques mots : C'est un petit logiciel qui me permet de lancer des vidéos, des images... à partir d'un T


Nos sponsors


Sondage...

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 : 6,458 sec (4)

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