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
» Panoramic et ses curiosités
par Jean Claude Aujourd'hui à 21:48

» Synedit Parameters
par Jean Claude Aujourd'hui à 21:15

» Utilitaire de suppression de fichiers
par Jean Claude Aujourd'hui à 21:11

» Code à vérifier SVP (Oups ! résolu)
par Jean Claude Hier à 21:16

» Compilateur FBPano
par jean_debord Hier à 9:56

» Bienvenue à Virtualalan !
par UltraVox Hier à 9:18

» Concours de Morpions
par jjn4 Hier à 0:04

» ShortName$(F) [Cloturé]
par papydall Mer 21 Juin 2017 - 16:19

» Remplacer espace par tiret dans noms des dossiers / fichiers
par papydall Mer 21 Juin 2017 - 15:27

» Menu personalisé avec icones et menu contextuel
par Laurent (Minibug) Mer 21 Juin 2017 - 12:44

» La liste des choses à faire ...
par Jack Mar 20 Juin 2017 - 22:49

» Quoi de neuf à propos de Goric 3D ? (@Jack)
par UltraVox Mar 20 Juin 2017 - 21:06

» Nom court et anti fenetre dos
par silverman Mar 20 Juin 2017 - 18:31

» Ludothèque Panoramic
par jjn4 Mar 20 Juin 2017 - 18:09

» Proposition à la communauté
par Yannick Mar 20 Juin 2017 - 15:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2017
LunMarMerJeuVenSamDim
   1234
567891011
12131415161718
19202122232425
2627282930  
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 : 9969
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
-
» Paramétrer le choix multiple pour un sondage
» [Administration] Un choix multiple pour une liste d'images, profil d'utilisateur
» Vote multiple pour les administrateurs
» Choix multiple pour liste d'images
» Structure pour un programme Windows 1/4

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