Page 46 sur 55

Re: EPB

Publié : jeu. 19/sept./2013 23:21
par Backup
EPB Version 2.44
http://michel.dobro.free.fr/download.php?view.25

cette version a été entièrement compilé en Purebasic V5.20 ..

Droopy , que je remercie encore, a joué le jeux en recompilant tres rapidement la Droopy Lib :)

pour les autres lib que j'utilise, j'avais les sources :)

donc cette version de EPb devrai bien fonctionner (debugger maison compris )
n'oubliez pas d'installer la Lib "Debug_lib" dans le dossier des librairies utilisateurs de votre Purebasic...
pour pouvoir utiliser le debogeur EPB

Merci encor a Ar-s pour ses remarques , en principe, j'en ai tenu compte :)

Re: EPB

Publié : mar. 01/oct./2013 13:07
par Backup
EPB Version 2.46
http://michel.dobro.free.fr/download.php?view.25

la fenetre du debogeur EPB n’apparaît plus au lancement de EPB
-création des fonctions debog_on() , debog_off() pour faire apparaître ou disparaître la fenetre du debogeur …
la fonction debog(numero_de_ligne,chaine$) et debog_cls() font apparaitre la fenetre automatiquement ...

-Ajout d'un requester lorsqu'on quitte EPB , car des fois nous ne le voulions pas vraiment …et on perdait le code si pas sauvé ...
-les onglets non sauvegardés sont désormais rechargé au prochain lancement de EPB

-correction d'un bug concernant la tabulation du code si celui-ci etait entièrement sélectionné ...
(sous EPB pas besoin de tout sélectionner pour Tabuler avec Ctrl+Tab )
ça corrige en meme temps le bug si le code avait été selectionné a l'envers (du bas vers le haut )

-sauvegarde automatique du code devant etre "Tailbitté" ... car avant on ne "Tailbitais" que le code ayant été sauvé.. pas celui qui etait dans l'editeur en cours d’édition ...

coloration et Prise en compte dans la tabulation des fonctions concernant les Modules ... (appel a la doc a la bonne page aussi )

voila .. bon test :)

ps : n'oubliez pas de remplacer le debug_lib dans votre dossier librairie utilisateur de Purebasic par celui de l'archive ;)

Re: EPB

Publié : mar. 01/oct./2013 15:09
par Ar-S
Merci ;)
Une icone en plus sur la barre pour pour afficher/masquer la fenêtre debog serait bien.

Image
Lien : http://pb.ldvmultimedia.com/debog.jpg

---edit---

Lorsqu'on quitte :

quit EPB ? dans le titre et le corps du requester.
quit EPB => Voulez vous quitter EPB ?

Re: EPB

Publié : mar. 01/oct./2013 18:57
par Backup
correction+icone apporté ;)
http://michel.dobro.free.fr/download.php?view.25

(meme numero de version )

ps: j'ai eu la bulle de faire le bouton toggle
il sert a afficher le debugger , pour le virer , il suffit de cliquer sur la croix rouge :) (mais si t'insiste il sera toggle le prochain coup )

Merci :)

je vais avoir de la bricole a la maison , je n'apporterai pas de modifications avant un petit moment
mais dites toujours, je note ...

Re: EPB

Publié : jeu. 10/oct./2013 12:36
par falsam
Une bouteille à la mer avec un message dedans : Ce clignotement de ton logo en bas de l’écran ainsi que celui des coordonnées du curseur C'est fatiguant pour les yeux :)

Re: EPB

Publié : jeu. 10/oct./2013 12:39
par Backup
arf !! je ne le vois meme pas :lol:

c'est rafraichi temps reel .. si je met une synchro vbl c'est tout l'editeur qui va ramer ...
il a fallu faire un choix ... :)


vais voir ce que je peux faire ...

Re: EPB

Publié : jeu. 10/oct./2013 12:47
par falsam
Ton logo et les coordonnées du curseur chevauchent le Scintilla Gadget situé en bas de l'écran. Je pense que tu devrais créer un StatusBar et bien fixer la marge bas de ton scrintilla gadget.

Re: EPB

Publié : jeu. 10/oct./2013 12:49
par Backup
probleme reglé pour la version 2.48 .. Merci :)

Re: EPB

Publié : jeu. 10/oct./2013 12:57
par falsam
Dans la version 2.46, quand on utilise la touche entrée, le curseur ne se place pas à l'indentation de la ligne juste au dessus.

Re: EPB

Publié : jeu. 10/oct./2013 14:04
par Backup
reglé pour la 2.48 ...
Merci :)

en fait je l'avais désactivé, car j'aimais pas avoir a retourner au début de la ligne si je voulais une ligne nouvelle ....
(faudra que je prevois d'ajouter une coche dans les options ) :)
pour l'edition j'utilise plutot la fleche vers le bas ...

Re: EPB

Publié : ven. 11/oct./2013 12:55
par Backup
je suis confronté a un truc de fou !

j'ai mon deboggeur qui est un prg autonome

EPB lance ce deboggeur via Runprg() , puis en principe communique avec lui via les fonctions d'une librairie
les valeurs envoyées fonctionnent bien le deboggeur les reçoits ... je peux bouger le curseur du debugger via la librairie

mais pas les chaine$ !! ... le debugger semble ne pas recevoir les chaines .... et .....

et sans rien toucher , je lance le debugger a la main (au lieu que ce soit EPB qui le fasse )

j'utilise les fonctions de la librairie mais en utilisant Japbe ... et là ... ça marche !! 8O :roll: :mrgreen:

cherchez l'erreur .... :?


japbe peut communiquer avec mon deboggeur , que j'ai préalablment lancé a la main
alors que EPB (qui est sensé etre prévu pour ) n'y arrive pas ... que je lance le debugger a la main ou si c'est lui qui le fait ... 8O

Re: EPB

Publié : ven. 11/oct./2013 14:05
par nico
Il y a certainement une explication logique à tout ça, si tu peux nous soumettre un code reproduisant le phénomène, on peut t'aider si tu veux.

Re: EPB

Publié : ven. 11/oct./2013 14:47
par Backup
tu tombe bien toi :)

j'utilise dans EPB et dans mes outils (qui sont tous des prg independant ... )
pour la communication avec mes outils qui elle.. fonctionne tres bien .....

Code : Tout sélectionner

Global MemoirePartagee
MemoirePartagee=CreateFileMapping_($FFFFFFFF,#Null, #PAGE_READWRITE, 0, SizeOf(Partage),"EPB")
*ram= MapViewOfFile_(MemoirePartagee, #FILE_MAP_WRITE, 0, 0, 0)



j'utilise pour mon deboggeur et dans la librairie
(donc c'est present dans ma lib , et dans le debuggeur avec le meme nom

Code : Tout sélectionner

MemoirePartagee2=CreateFileMapping_($FFFFFFFF,#Null, #PAGE_READWRITE, 0, SizeOf(Partage_debog),"d_debug")
	*ram_debog=MapViewOfFile_(MemoirePartagee2, #FILE_MAP_WRITE, 0, 0, 0)


question , a ton avis le fait d'avoir plusieurs Fichier d'echange d'ouvert , ça peut poser un probleme ?

ce que je ne comprends pas , c'est que ça a marché un temps ..... 8O

il semble aussi que je suis vite limité , niveaux chaine$

mes structures sont de la forme
pour EPB et les outils

Code : Tout sélectionner

Structure Partage
	declencheur.b
	valeur1.i
	message$ {500} ; si je met 5000 ça me fait une erreur de memoire (pas toujours )	
EndStructure
Global *ram.Partage 
pour le deboggeur

Code : Tout sélectionner

Structure Partage_debog
	declencheur.b
	valeur1.i	
	debog_message$ {500} ; si je met 5000 ça me fait une erreur de memoire (pas toujours )	
EndStructure
Global *ram_debog.Partage_debog




je ne peux pas trop filer de code exemple , car mon histoire implique trop de prg

--EPB (qui contient la structure et le "ramdisk" pour la liaison avec les outils ) .. donc chaque outils a la meme

--les outils prg independant qui ont le meme ramdisk que EPB

---le Deboggeur qui a un ramdisk different
----la librairie qui fait appel aux fonctions du deboggeur qui a le meme ramdisk que le deboggeur

la liaison entre EPB et les outils fonctionne bien !! ..
seule la liaison avec le debuggeur plante ... (pas de chaine$ de transmises )

et seule Japbe arrive a la faire fonctionner !!! 8O


voila un petit dessin de l'architecture du truc (j'ai pas dessiné les ram disk se trouvant dans les prg périphérique )

Image

si japbe utilise la librairie (ici en vert pale ) elle peut commander comme il faut le deboggeur !
mais pas EPB !!! ..
ce qui met hors de cause la librairie qui fonctionne lorsque Japbe l'utilise....



si j'utilise un seul "ramdisk" pour tout le monde en separant les variables de chacun dans la structure , ça fait le meme effet ..
c'est a rien y comprendre .....


la seule difference entre EPB et japbe, c'est que EPB lance le compilateur a chaque compilation .... je ne pense pas que cela vienne de là ...

Re: EPB

Publié : ven. 11/oct./2013 18:22
par nico
Je vois deux problèmes qui peuvent se présenter:

Le premier:
Ta structure contenant une chaîne de longueur limitée, as tu pris en compte que la taille de cette chaîne ne sera pas la même suivant que tu compiles en unicode ou pas? Vérifie en lançant un test que ta structure de partage fait bien la même taille des deux cotés en compilation ascii et unicode. Je sais que tu utilises une lib (mais tu veux dire deux: une ascii et une unicode ?).Comment gères tu le fait de compiler en unicode et ascii, ta lib prend en compte cela?

Deuxième problème:
En compilation 64 bit, createfilemapping ne fonctionnera pas en l'état, il faut changer le premier paramètre qui correspond à INVALID_HANDLE_VALUE
32 bit : $FFFFFFFF
64 bit : $FFFFFFFFFFFFFFFF

Il faut changer les valeurs des deux cotés, ce qui oblige à avoir un débogueur 32 bit et un autre 64 bit

En espérant que ça puisse t'aider. :)

Re: EPB

Publié : ven. 11/oct./2013 21:17
par Backup
nico a écrit :Comment gères tu le fait de compiler en unicode et ascii, ta lib prend en compte cela?
Tailbite propose le mode "/Mult" qui peut compiler une lib pour tout les types ...(threadsafe, unicod)
mais ça ne change pas mon probleme :)
l'ideal etant de choisir le mode Ascii ou unicod au depart ... unicod qui peut le plus peut le moins

Deuxième problème:
En compilation 64 bit, createfilemapping ne fonctionnera pas en l'état, il faut changer le premier paramètre qui correspond à INVALID_HANDLE_VALUE
32 bit : $FFFFFFFF
64 bit : $FFFFFFFFFFFFFFFF

Il faut changer les valeurs des deux cotés, ce qui oblige à avoir un débogueur 32 bit et un autre 64 bit

En espérant que ça puisse t'aider. :)
ha oui , ça j'avais PAS géré :roll: .....

ça compromet le truc du coup ....
faut que je vois si ça vaut le coup d'avoir 2 deboggeurs .....

je pensais peut etre utiliser un fichier carrement ....
un fichier "d'echange" entre EPB et le Deboggeur maison ...
faut voir si le Disque dur suit ... niveau vitesse ....

l'avantage , je pourrai compiler en 64 bits le deboggeur du coup ....
ça devrai tourner dans les 2 modes

ou utiliser le mailslot ... pour voir
ou ... laisser tomber le debogeur ..

Merci pour tes lumieres :)