FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» TourD Version 2
par Minibug Aujourd'hui à 1:50

» La métamatière et le peuple
par JL35 Hier à 21:18

» Capture d'une zone de l'écran total
par JL35 Hier à 18:41

» Logiciel de soutien scolaire en langues.
par Pedro Alvarez Hier à 11:49

» qui peut résoudre mon prb
par pascal10000 Jeu 16 Nov 2017 - 17:30

» évènements et objets système : listage automatique
par Jean Claude Jeu 16 Nov 2017 - 11:15

» Panoramic et la reconnaissance vocale.
par papydall Jeu 16 Nov 2017 - 3:45

» Bizzarerie dans Edge
par Marc 37 Mer 15 Nov 2017 - 17:45

» KGF_dll - nouvelles versions
par Klaus Mer 15 Nov 2017 - 2:08

» Analyser un code Panoramic
par JL35 Lun 13 Nov 2017 - 18:38

» Un bonjour en passant...
par Minibug Dim 12 Nov 2017 - 19:57

» mise a jour calculatrice
par joeeee2017 Dim 12 Nov 2017 - 4:20

» comment accèder à l'heure et à la date d'un fichier
par Klaus Sam 11 Nov 2017 - 0:53

» Compilateur FBPano
par Jicehel Mer 8 Nov 2017 - 15:22

» Mon adresse e-mail
par treehouse Mer 8 Nov 2017 - 14:36

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2017
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
27282930   
CalendrierCalendrier

Partagez | 
 

 2.01: ajout fonction SearchPatternInBinaryFile

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Klaus

avatar

Nombre de messages : 10112
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: 2.01: ajout fonction SearchPatternInBinaryFile   Lun 4 Mar 2013 - 18:09

Nouvelle version:
KGF.dll V2.01 du 4 Mars 2013

J'ai ajouté une fonction qui peut chercher une chaîne de caractères binaire dans un fichier binaire:

KGF.dll: res% = dll_call3("SearchPatternInBinaryFile",adr(nom$),adr(pattern$),offset%)
KGF_SUB.bas: SearchPatternInBinaryFile(nom$,pattern$,start%)

La doc est à jour.

Modules modifiés:
KGF.dll
KGF_SUB.bas
KGF.chm, KGF.doc, KGF.pdf


Grâce au paramètre start%, cette fonction peut être utilisée en cascade pour trouver toutes les occurrences d'une chaîne binaire.

Voici une démo qui montre comment trouver les 1à premiers CR LF dans un fichier:
Code:
' recherche_dans_fichier_binaire.bas

label ouvrir

dim i%, offset%, nom$, chaine$

open_dialog 1
button 100 : top 100,10 : left 100,10 : caption 100,"Ouvrir" : on_click 100,ouvrir
memo 101 : top 101,40 : left 101,10 : width 101,400 : height 101,400
  font_name 101,"Courier"


KGF_initialize("KGF.dll")


end

ouvrir:
  nom$ = file_name$(1)
  if nom$="_" then return
  clear 101

  item_add 101,nom$
  item_add 101," "
  item_add 101,"Les 10 premiers CR LF:"
 
  chaine$ = chr$(13) + chr$(10)
  offset% = 0
  for i%=1 to 10
    SearchPatternInBinaryFile(nom$,chaine$,offset%)
    if SearchPatternInBinaryFile=0 then exit_for
    item_add 101,"Offset "+str$(SearchPatternInBinaryFile)
    offset% = SearchPatternInBinaryFile + 1
  next i%
  return

#INCLUDE "KGF_SUB.bas"

Et voici une vue sur la liste des fonctions disponibles, dans le fichier KGF.chm, concernant l'accès aux fichiers binaires:
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Jicehel

avatar

Nombre de messages : 5859
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: 2.01: ajout fonction SearchPatternInBinaryFile   Lun 4 Mar 2013 - 20:44

Là, ça ouvre des possibilité pour l'éditeur hexa de JL35 par exemple Wink
Pratique. Merci Klaus
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10112
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: 2.01: ajout fonction SearchPatternInBinaryFile   Lun 4 Mar 2013 - 21:19

Oui, c'est une application possible.

Et il faut toujours garder en vue (c'est d'ailleurs bien expliqué dans la doc), qu'on peut utiliser ces fonctions de deux manières:
1. directement sans traitement préalable: le fichier sera alors ouvert et fermé automatiquement à chaque appel d'une fonction
2. ouvrir le fichier par OpenBinaryFile(...), puis faire tous les appels de fonctions nécessaires, puis permer le fichier par CloseBinaryFile(...). Les fonctions individuelles ne feront alors plus d'ouvertures/fermetures intermédiaires, mais utiliseront le canal interne ouvert pour le fichier. On peut ouvrir simultanément autant de fichiers binaires qu'on veut - le programme gère ses canaux de façon interne dans un tableau dynamique, et seul le nom de fichier sert de référence pour retrouver le fichier ouvert dans les tables. On n'a pas besoin de réserver des canaux - c'est géré de façon interne.

Ce deuxième mode est fortement conseillé lorsqu'on veut gérer de multiples opérations sur un même fichier, pour des raisons de performance. Le premier mode est conçu pour faciliter un accès ponctuel.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: 2.01: ajout fonction SearchPatternInBinaryFile   

Revenir en haut Aller en bas
 
2.01: ajout fonction SearchPatternInBinaryFile
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: