| Dump fichier (bis) | |
|
|
Auteur | Message |
---|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Dump fichier (bis) Dim 29 Avr 2012 - 23:47 | |
| J'avais déjà proposé un petit programme de dump hexadécimal dans l'Antiquité (en 2007), avec les nouvelles commandes (HEX$, FILEBIN_HEXA_READ, etc.), c'est plus simple maintenant. C'est un peu longuet pour les gros fichiers, mais on peut interrompre à tout moment si on en a assez, puis continuer ou abandonner, au choix. - Code:
-
LABEL Chf, Dump, Dumpr, Stp DIM f$, a$, b$, c$, d$, m$, ad%, sad%, sz%, i%, j%, stp%
WIDTH 0, 558: HEIGHT 0, 700: FONT_SIZE 0,10: CAPTION 0," - DUMP FICHIER -" COLOR 0,180,255,255: BORDER_SMALL 0 LIST 1: TOP 1,30: LEFT 1,0: WIDTH 1, 540: HEIGHT 1, HEIGHT(0)-70 FONT_NAME 1,"Lucida Console": FONT_SIZE 1, 8: COLOR 1,255,255,180 EDIT 2: TOP 2,0: LEFT 2,0: WIDTH 2,WIDTH(0)-100: FONT_SIZE 2,8 TEXT 2," - cliquer ici pour choisir un fichier -" ON_CLICK 2, Chf PROGRESS_BAR 3: TOP 3,16: LEFT 3,0: WIDTH 3,WIDTH(1): HEIGHT 3,15 MIN 3,0 BUTTON 4: TOP 4, 0: LEFT 4,WIDTH(0)-95:HEIGHT 4,18: CAPTION 4,"Stop": HIDE 4 OPEN_DIALOG 10 END ' ============================================================================== Chf: f$ = FILE_NAME$(10): IF LEN(f$) < 3 THEN RETURN GOSUB Dump RETURN
Dump: stp% = 0: sad% = 0 FILEBIN_OPEN_READ 1, f$: sz% = FILEBIN_SIZE(1): FILEBIN_CLOSE 1 MAX 3, sz%: TEXT 2,f$ + " ("+STR$(sz%)+" = "+HEX$(sz%)+"h octets)" SHOW 4 CLEAR 1 Dumpr: CAPTION 4, "Stop": ON_CLICK 4, Stp FILEBIN_OPEN_READ 1, f$ FILEBIN_POSITION 1, sad% FOR ad% = sad% TO sz% STEP 16 POSITION 3, ad% FILEBIN_HEXA_READ 1, 16, a$: d$ = "": c$ = "" FOR i% = 1 TO LEN(a$) STEP 2 IF (ad%+(i%-1)/2) >= sz% THEN EXIT_FOR m$ = MID$(a$, i%, 2) d$ = d$ + m$ + " " j% = HEX(m$) IF j% <32 c$ = c$ + "." ELSE c$ = c$ + CHR$(j%) END_IF NEXT i% b$ = RIGHT$(" "+HEX$(ad%),6) ITEM_ADD 1, b$+": " + d$ + STRING$(49-LEN(d$)," ") + c$ DISPLAY IF stp% = 1 sad% = FILEBIN_POS(1) CAPTION 4,"Reprendre": ON_CLICK 4, Dumpr EXIT_FOR END_IF NEXT ad% FILEBIN_CLOSE 1 IF stp% = 0 THEN HIDE 4 stp% = 0 RETURN
Stp: stp% = 1 RETURN
| |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Dump fichier (bis) Lun 30 Avr 2012 - 1:31 | |
| | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Mer 2 Mai 2012 - 0:06 | |
| | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Dump fichier (bis) Mer 2 Mai 2012 - 16:34 | |
| Merci jjn4 (et Jicehel aussi), mais dis-donc, tu te fais bien rare... | |
|
| |
Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 21:26 | |
| Frage an JL35. Wenn ich ein ICON auslese, habe ich den Code. Kann ich diesen in Panoramic verwenden, um das ICON anzuzeigen ? Severin Question to JL35. If I choice an ICON, I have the code. Can I use it in Panoramic to see the ICON Question à JL35. Si je le choix d'un ICON, j'ai le code. Puis-je l'utiliser dans panoramique pour voir l'icône? | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 21:42 | |
| Ja, das kannst Du. Wenn Dui den Kode hast, kannst du die 2d_xxx Kommandos verwenden, um das Bild pixelweise zu zeichnen. Du musst allerding die interne Struktur einer ICO Datei kennen - nicht so einfach.
Oui, tu peux le faire. Lorsque tu as le code (note: représentation binaire), tu peux utiliser les commandes 2d_xxx pour dessiner l'image. Cependant, tu dois connaître la structure interne d'un fichier ICO - pas si simple. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 22:43 | |
| Si c'est pour l'affichage d'une icône (.ico) sous Panoramic, tu as raison Klaus, pas si simple... le mieux est peut-être de la convertir préalablement en jpg ou bmp (Irfanview par exemple) pour l'afficher dans un picture. | |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 22:59 | |
| Extension d'un fichier d'icône pour Windows
Répertoire d'icônes: Chaque ressource d'icône débute par le répertoire d'icônes. Le répertoire d'icônes, surnommé structure ICONDIR, permet d'indiquer le nombre d'icônes que contient la ressource d'icône et la dimension/couleur de chaque image icône. La structure «IconDir» est construite de la façon suivante: Offset Taille Description 0000h 2 octets Ce champ contient une valeur réservé. Contient toujours la valeur 0. 0002h 2 octets Ce champ permet d'indiquer le type de membre. La valeur est toujours 1. 0004h 2 octets Ce champ permet d'indiquer le nombre d'icônes que contient le répertoire. 0006h variable Ce champ contient un tableau de structure «IconDirEntry».
Voici la structure «IconDirEntry»: Offset Taille Nom Description 0000h 1 octet bWidth Ce champ permet d'indiquer la largeur de l'icônes. Les valeurs autorisés sont: 16, 32 ou 64. 0001h 1 octet bHeight Ce champ permet d'indiquer la hauteur de l'icônes. Les valeurs autorisés sont: 16, 32 ou 64. 0002h 1 octet bColorCount Ce champ permet d'indiquer le nombre de couleurs que prend en charge l'icône: 2, 4, 8 ou 16. Si la valeur est 0, il s'agit d'une icône de 256 couleurs ou plus. 0003h 1 octet bReserved Ce champ est réservé, et il devrait toujours contenir la valeur 0. 0004h 2 octets wPlanes Ce champ permet d'indiquer le nombre de plages de couleurs que contient l'icône. 0006h 2 octets wBitCount Ce champ permet d'indiquer le nombre de bits par pixel que contient l'icône. 0008h 4 octets dwBytesInRes Ce champ permet d'indiquer la taille de la ressource en octets. 000Ch 4 octets dwImageOffset Ce champ permet d'indiquer la position de déplacement (Offset), en octets, du début du fichiers jusqu'à l'icône.
Image icône: Chaque ressource d'icône contient une icône de chaque image identifiée dans le répertoire. Une image icône est constitué d'une entête, une table de couleurs avec un masque XOR, et un masque AND. L'image d'icône a le format suivant: Offset Taille Nom Description 0000h 4 octets biSize Ce champ permet d'indiquer la taille de la structure d'information. 0004h 4 octets biWidth Ce champ permet d'indiquer la largueur du Bitmap. 0008h 4 octets biHeight Ce champ permet d'indiquer la hauteur du Bitmap. 000Ch 2 octets biPlanes Ce champ permet d'indiquer le nombre de plage. 000Eh 2 octets biBitCount Ce champ permet d'indiquer le nombre de bits par pixel. 0010h 4 octets biCompression Ce champ permet d'indiquer le type de compression. 0014h 4 octets biSizeImage Ce champ permet d'indiquer la taille de l'image. 0018h 4 octets biXPelsPerMeter Ce champ permet d'indiquer l'échelle de pixel par mètre à l'horizontal. 001Ch 4 octets biYPelsPerMeter Ce champ permet d'indiquer l'échelle de pixel par mètre à la vertical. 0020h 4 octets biClrUsed Ce champ permet d'indiquer le nombre de couleurs indexés dans la table des couleurs. 0024h 4 octets biClrImportant Ce champ permet d'indiquer le nombre de couleurs indexés requis pour afficher le Bitmap. 0028h variable icColors Ce champ contient un tableau de couleurs RVB (RGB en anglais) en format 32 bits. variable variable icXOR Ce champ contient un tableau d'octets d'un masque XOR (ou exclusif binaire). variable variable icAND Ce champ contient un tableau d'octets d'un masque AND (et binaire). | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 23:36 | |
| Merci Jicehel, il y a bien sûr des similitudes avec le format bmp, en un peu plus compliqué. Ça devrait permettre l'affichage, mais il faut être motivé, quand même ! Petite remarque Jicehel: la valeur 48 doit également être autorisée dans les dimensions ? | |
|
| |
Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 23:47 | |
| Ich habe alle ICON als BMP zur Verfügung. Habe ja in einem anderen nach JPG oder BMP gefragt. Antwort war: BMP ist besser. Wie setze ich jetzt die BMP in Panoramic um ? Danke Severin
I have all the ICON to BMP available. 've Asked in another to JPG or BMP. Answer was: BMP is better. As I sit now in the BMP for Panoramic? Thank Severin
J'ai tout le ICON à la disposition BMP. Avons demandé dans un autre au format JPG ou BMP. Réponse était: BMP, c'est mieux. Comme je suis assis aujourd'hui dans le BMP pour panoramique? Merci Severin | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 23:50 | |
| Eine BMP Datei kann einfach mit dem FIEL_LOAD Kommando in ein PICTURE gelesen werden.
Un fichier BMP peut être chargé simplement dans un PICTURE à l'aide de la commande FILE_LOAD. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 23:51 | |
| Bonsoir Severin,
Pour afficher une image bmp, rien de plus simple, dans un Picture: File_Load n,"imageicon.bmp"
ou je n'ai pas compris la question (la traduction automatique est un peu... laborieuse) ? | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Dump fichier (bis) Jeu 3 Mai 2012 - 23:51 | |
| Bonsoir Klaus, on s'est croisés. J'ai essayé de tromper le picture en renommant un .ico en .bmp, mais il ne s'est pas laissé faire ! normal. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 0:09 | |
| Eh oui, les formats internes sont bien différents... | |
|
| |
Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 0:10 | |
| Hallo Klaus, es ist schwer das in einfachen Worten zubeschreiben, damit der Übersetzer funktioniert. Meine Idee: Wenn ich den hex-Code habe, ihn in Panoramic stecken und von dort aus anzeigen.
Vorteil: Keine Bilddateien separat halten. Nachteil: Vermutlich längeres Programm
Ich hoffe ich habe es deutlich genug beschrieben. Die Idee kam, als ich JL35's programm an einem Bild ausprobiert habe. Danke Severin
Hello Klaus, It is difficult to describe in simple terms, the so that the translator works. My idea: If I have the hex code, and put him in Panoramic view from there.
Advantage: No hold image files separately. Disadvantage: Probably longer program
I hope I have described it clearly enough. The idea came when I tried JL35's program on an image. Thank Severin
Bonjour Klaus, Il est difficile de décrire en termes simples, la sorte que le traducteur travaille. Mon idée: Si j'ai le code hexadécimal, et le mit en vue panoramique à partir de là.
Avantage: Pas de stocker des fichiers d'image séparément. Inconvénient: le programme Probablement plus
J'espère que je l'ai décrit assez clairement. L'idée est venue quand j'ai essayé le programme JL35 sur une image. Merci Severin | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 0:21 | |
| Je crois comprendre ce que dit Severin: stocker l'image directement dans le programme en hexadécimal (sous forme de datas) pour ne pas avoir un fichier annexe. J'ai déjà fait ça, effectivement, c'est valable pour de petites imagettes, mais le programme devient vite très volumineux si les images sont un peu grandes. Je ne parle évidemment que de toutes petites images, c'est impensable pour des images par exemple vga (640x480). Même une icône 64x64 serait déjà très volumineuse. J'ai un exemple d'une icône simple, 64x64, qui fait 12862 octets. Si on prend l'équivalent en bmp comme fait Severin (c'est à peu près la même taille), traduit en valeurs hexa, ça fait 25724 caractères (un caractère pour 4 bits), ça représente un certain nombre de lignes de datas ! mais c'est faisable. Il ne s'agit pas, je pense, d'interpréter directement les caractères hexa un par un pour l'affichage, trop compliqué, mais de les écrire dans un fichier provisoire .bmp et d'afficher celui-ci dans un picture par file_load, puis de le détruire après usage. là-dessus, bonne nuit à tous ! | |
|
| |
Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 0:52 | |
| Ich möchte 22x22 BMP in das Programm einarbeiten. Für die Schaltleiste in meinem Grundprogramm.
Also farbig für activ, grau für inactiv. Gibt es ein Beispielprogramm zum testen ? Danke Severin
I would like to incorporate into the 22x22 BMP program. For the rubber tube in my basic program.
So for activ-colored, gray for inactive. Is there a sample program to test? Thank Severin
Je tiens à incorporer dans le programme BMP 22x22. Pour le tube de caoutchouc dans mon programme de base.
Donc, pour ac-couleur, gris pour les inactifs. Y at-il un exemple de programme pour tester? Merci Severin | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 1:47 | |
| Traduction "tube de caoutchouc" signifie en réalité "Barre d'outils". Bravo Google translator...
Ich kann ganz leicht eine DLL-Funktion erstellen, die eine ICO Datei in eine BMP Datei umsetzt. Freeware-stand-alone converter sind vielfach im Internet erhältlich. Aus Lesbarkeits- und Volumengründen rate ich davon ab, solche Dateien as Data ins programm hineinzuschreiben. Die ICO Dateien können auch leicht in eine Ressource Datei eingebunden werden, von wo sie als BMP Dateien herausgelesen werden können.
Je peux facilement faire une fonction DLL convertissant un fichier ICO en fichier BMP. Des convertisseurs stand-alone en freeware sont disponibles sur le net. Pour des raisons de lisibilité et de volume, je déconseille d'inclure de tels fichiers dans le programme sous forme de DATA. Les fichiers ICO peuvent également être regroupés facilement dans un fichier de ressources, d'où ils peuvent être extraits sous forme de fichiers BMP.
| |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 14:10 | |
| Amusant le tube de caoutchouc ! je n'aurais pas trouvé ! Si c'est pour incorporer dans le programme, le format jpg serait plus approprié que le bmp (pour l'encombrement).
Mais comme tu dis Klaus, s'il y a plusieurs icônes c'est beaucoup trop volumineux pour des datas et il vaut mieux les regrouper dans un fichier à part. | |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 14:44 | |
| Faire un DLL d'icônes ou partir du principe des tilesets dans une image, mais c'est ce que voulez éviter Severin (il ne voulait pas de fichiers externes initialement | |
|
| |
Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 15:09 | |
| Danke für den Hinweis. Habe meinen Gartenschlauch geholt. Aber ich brauche euren RAT. Wie bekomme ich den Schlauch in meinen Laptop. Thanks for the tip. 've Got a garden hose. But I need help. How do I get the hose into my laptop. Merci pour le tuyau. 'Ai un tuyau d'arrosage. Mais j'ai besoin d'aide. Comment puis-je obtenir le tuyau dans mon ordinateur portable. Severin | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Dump fichier (bis) Ven 4 Mai 2012 - 17:20 | |
| Je sais bien que c'est ce que Severin voulait éviter. Mais je persiste à penser qu'il vaut mieux distribuer un fichier supplémentaire que de laisser le programme principal gonfler démesurément.
Ich weiss wohl, dass Severin gerade das vermeiden wollte. Ich beharre aber auf meiner Meining, dass es besser ist, eine zusätzliche Datei zu installieren als zuzulassen, dass das Hauptptogramm sich übermässig aufbläht. | |
|
| |
Contenu sponsorisé
| Sujet: Re: Dump fichier (bis) | |
| |
|
| |
| Dump fichier (bis) | |
|