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
» GRID_LOAD
par Jean Claude Aujourd'hui à 21:04

» Rotation d'une image d'un angle quelconque
par Jean Claude Aujourd'hui à 20:57

» HVIEWER
par Yannick Aujourd'hui à 20:31

» StratégoV8 et V9
par Jean Claude Aujourd'hui à 20:13

» KGF_dll - nouvelles versions
par Klaus Hier à 21:28

» Déformation d'image en trapèze
par mindstorm Hier à 21:06

» Mah-Jong américain
par Jean Claude Lun 15 Jan 2018 - 19:37

» Problème avec Deepl
par Klaus Lun 15 Jan 2018 - 0:34

» Quelques nouvelles ...
par Jean Claude Ven 12 Jan 2018 - 22:40

» Renommer les instructions ITEM_... ?
par Jicehel Ven 12 Jan 2018 - 18:56

» Ludothèque Panoramic
par jjn4 Ven 12 Jan 2018 - 18:11

» sous-programmes et fonctions
par Jack Ven 12 Jan 2018 - 17:51

» Mah-Jong français
par Jean Claude Jeu 11 Jan 2018 - 22:15

» panoramic 0.9.28
par gigi75 Ven 5 Jan 2018 - 14:06

» Un jeu qui va vous énerver!
par Jean Claude Jeu 4 Jan 2018 - 22:05

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Janvier 2018
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
293031    
CalendrierCalendrier

Partagez | 
 

 Lanceur multiple pour un programme découpé.

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



MessageSujet: Lanceur multiple pour un programme découpé.   Mer 30 Déc 2015 - 1:05

Je me dis que pendant les retouches de Synedit_Editor, ma méthode actuelle pour faire fonctionner un programme qui a des bibliothèques en construction pourrait intéresser quelqu'un. Pas sûre mais va savoir.

La méthode habituelle est de mettre des portions de programme en INCLUDE. Mais cela a un inconvénient: c'est le lancement du programme. Tant qu'on est en Panoramic, en étant dans l'onglet du programme principale, la chose se fait normalement, mais si on est dans une partie Include, ce n'est plus le cas.
Pour synedit_Editor, il y a un autre problème: c'est panoramic.exe qui fait l'exécution, mais les includes ne sont pas incorporés.

Donc j'ai mis au point il y a quelque temps une méthode qui comble les inconvénients de celaà.

J'ai fait un chargeur, et pour l'exemple, je le sauvegarde: "C:\PRG_BASIQUE\Lanceur_pano.bas"
le voici:
Code:
' raccourcis cde
' cumul de chaque partie du nouveau éditeur sans événement " directement en ajoutant chaque morceaux
' ------------------------------------------------------------------------------

' width 0,1200
dim dos$,f1$,f2$,f3$,f4$,f5$,f6$
dos$ = "C:\PANO\RE-editeur"
f1$ = dos$ + "prg_en_cours.bas"
f2$ = dos$ + "format_fonte.bas"
f3$ = dos$ + "biblio_bouton.bas"
f4$ = dos$ + "biblio_MEMO_COLOR.bas"

dLIST 10 :' on charge le premier programme, et on ajoute les autres dans le dlist
   file_load 10,f1$
   file_add 10,f2$
   file_add 10,f3$
   file_add 10,f4$
  
' =============== suite ==================
' on supprime la 5 lignes, et on remplace par ligne vide  pour retirer CHAIN
item_delete 10,5 : item_insert 10,5,"' retiré chain >C:\PANO\RE-editeur\new_lanceur.bas<"
file_save 10,dos$ + "execute.bas" : wait 100
chain dos$ + "execute.bas"

Dans les variables f1$ f2$ ..., il y a le nom de chaque partie du programme. Dans la démonstration,la 5ème du programme sauvegardé dans la variable f1$, il y a:CHAIN "C:\PRG_BASIQUE\Lanceur_pano.bas"

Cela a pour effet de lancer le chargeur.
Dans les autres programme, il y a aussi au début, mais peut importe que ce soit la 5ème ou la proemière ligne, il y a aussi cette instruction. A partir du moment quelle est avant de lire une sub ou procédure, il y a pas de problème. Ce qui fait qu'une fois la page sauvegardée, que l'on soit dans le programme principal ou dans une librairie, le programme fonctionne.

Je mets en exemple différente page pour vous montrer.
1er programme
Code:
rem "==================================="
rem "          programme de démo        "
rem " - C:\PRG_BASIQUE\Démo.bas         "   ' NOM du programme principal
rem "==================================="
CHAIN "C:\PRG_BASIQUE\Lanceur_pano.bas"
' chaque onglet à une ligne de lancement d'un programme principal
' qui rassemble les différents onglets ou librairie
' puis l'execute
rem " ce programme est la première page d'un programme principal
rem " le programme est disons coupé, et les autres autres parties sont soit dans les onglets suivants, ou en mémoire

' lignes du programme de départ
if 1=2
   init()
   gui()
   execution()
   ' des subs qui pourraient être mise ici, et bien d'autre.
end_if

END
' -------------
sub init()
end_sub

sub gui()
end_sub

sub execution()
end_sub

' on a coupé le programme ici, et mis des librairie ailleurs.

2eme programme
Code:
' librairie 1 sauvegardée en pour l'exemple: "C:\PRG_BASIQUE\lettre.bas"
CHAIN "C:\PRG_BASIQUE\Lanceur_pano.bas" : ' cela lancera l'exécution du programme
sub format_lettre() :' n'importe quoi
   message "format_lettre()"
end_sub

etc...

3eme programme:
Code:
' librairie 2  sauvegardée en pour l'exemple: "C:\PRG_BASIQUE\boite.bas"
CHAIN "C:\PRG_BASIQUE\Lanceur_pano.bas" : ' cela lancera l'exécution du programme
sub format_boite() :' n'importe quoi
   message "format_boite()"
end_sub

etc...
" ET ON POURRA FAIRE PAREIL AVEC AUTANT DE LIBRAIRIE QU'ON VEUT............

Cela fait que de cette façon le programme est lancé par deux instructions CHAIN. La première appelle à l'assembleur des morceaux du programme, et dans celui, on retrouve CHAIN du programme assemblé. Quelque soit l'onglet où on se trouve, on peut exécuter notre programme principal.

RESTE UN PROBLÈME: c'est de pouvoir savoir où se situe une erreur si elle ne se situe pas dans la page 1 du programme.

J'utilise un éditeur de texte qui est Edit-Pad. Celui-ci a la particularité et il n'est pas le seul, selon le réglage des options, de recharger les pages automatiquement, à chaque sauvegarde du texte. Donc dans EditPat, j'ouvre dans l'exemple du haut: dos$ + "execute.bas". Le programme bas étant chargé, et ayant les n° de lignes, à chaque lancement du programme basic, il y a sauvegarde du programme assemblé, et automatiquement, celui-ci est à jour. Une erreur en ligne 1200, on y va, et on sait où elle se trouve.

Histoire de mettre un lien pour EDIT-PAD

Pour moi, il est deulement dommage qu'au lancement du programme avec Synedit_Editor, il n'y ait pas de sauvegarde automatique. A propos pour Synedit, il manque l'instrucion: 2D_FILL_COLOR
Revenir en haut Aller en bas
Klaus

avatar

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

MessageSujet: Re: Lanceur multiple pour un programme découpé.   Mer 30 Déc 2015 - 1:50

Tu as fait une belle description de ton outil, et je pense qu'on arrive à bien cerner le but et l'utilité d'un tel projet. J'ai du mal à me sortir de Synedit_Editor en ce moment, car il impose de jongler simultanément avec le code Panoramic de l'éditeur et avec le code Delphi de KGF.dll, mais j'ai le sentiment que ton concept est également utilisable par Synedit_Editor. A voir. Pour le moment, je me bats avec une erreur "survenant" de temps en temps - un blocage sur le presse-papier. Et comme toujours dans le cas des erreurs en apparence aléatoires, c'est extrêmement chronophage.

PS.
J'ai pris bonne note pour 2D_FILL_COLOR et ce sera dans la prochaine version.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Lanceur multiple pour un programme découpé.   Mer 30 Déc 2015 - 2:45

Merci Klaus.

Cela fonctionne indifféremment avec Panoramic et Synedit_Editor.

Je te souhaite bon courage pour ton programme, et j'ai le même problème pour le mien.
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: Lanceur multiple pour un programme découpé.   

Revenir en haut Aller en bas
 
Lanceur multiple pour un programme découpé.
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Structure pour un programme Windows 1/4
» Installer plusieurs logiciels en une seule opération
» Conseils pour un programme simple de création de roadbooks
» pour garder les Roses coupées plus longtemps
» Les meilleures extensions Firefox pour protéger sa vie privée

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: