FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Une calculatrice en une ligne de programme
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar jean_debord Aujourd'hui à 8:01

» Gestion d'un système client-serveur.
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar Pedro Hier à 19:31

» Les maths du crocodile
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar jean_debord Hier à 10:37

» Naissance de Crocodile Basic
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar jean_debord Hier à 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar papydall Dim 21 Avr 2024 - 23:30

» Form
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar leclode Dim 21 Avr 2024 - 18:09

» trop de fichiers en cours
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar Marc Dim 21 Avr 2024 - 2:41

» 2D_fill_color(résolu)
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

» Bataille-navale
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Emptypar jjn4 Mer 3 Avr 2024 - 14:08

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le Deal du moment : -50%
-50% Baskets Nike Air Huarache Runner
Voir le deal
69.99 €

 

 Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3

Aller en bas 
+3
Yannick
Klaus
Jack
7 participants
AuteurMessage
Jack
Admin
Jack


Nombre de messages : 2381
Date d'inscription : 28/05/2007

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyMer 9 Déc 2015 - 21:55

Version instantanée du 9 décembre 2015 : PANORAMIC V 0.9.27i3

Une version instantanée est la version actuelle du développement de PANORAMIC, elle vous permet d'utiliser les toutes dernières améliorations, sans attendre la sortie de la prochaine version.
Une version instantanée n'a pas de procédure d'installation (c'est un fichier zip).
Les nouveaux mots-clés n'ont pas de coloration syntaxique dans l'EDITEUR.

Cette version instantanée est disponible ici :

1 - dans sa version avec l'éditeur
http://panoramic-language.pagesperso-orange.fr/PANORAMIC_EDITOR.zip

2 - dans sa version sans éditeur
http://panoramic-language.pagesperso-orange.fr/PANORAMIC.zip


Voici les améliorations de cette version, par rapport à la version V0.9.26 du 2 juillet 2015 :

mathématiques :

DEGREES : les angles sont exprimés en degrés. S'applique aux fonctions COS(), SIN(), TAN(), ACOS(), ASIN(), ATAN()
RADIANS : les angles sont exprimés en radians. S'applique aux fonctions COS(), SIN(), TAN(), ACOS(), ASIN(), ATAN()
DEGREE_TO_RADIAN(A) : retourne la valeur en radians de l'angle A en degrés
RADIAN_TO_DEGREE(A) : retourne la valeur en degrés de l'angle A en radians
PI : retourne 3.1415926535897932384626433832795

objets :

SHOW_ALL : rend visible tous les objets système
HIDE_ALL : rend invisible tous les objets système
CREATE_HIDE : les prochains objets système créés ne seront pas visibles
CREATE_SHOW : les prochains objets système créés seront visibles

système :

NUMBER_TICKS : retourne le nombre de millisecondes écoulées depuis le démarrage du système
VERSION$ : retourne la version de PANORAMIC. Exemple : "0.9.27"
SYSTEM$ : retourne le système d'exploitation utilisé par PANORAMIC ("WINDOWS" ou "ANDROID" ou "MACOS")
ENVIRONMENT$ : retourne l'environnement pour lequel PANORAMIC a été créé ("CLASSIC" pour Windows, "MULTIPLF" pour un environnement multi-plateforme Windows/Android/MAC OS))

Bibliothèques :
LIBRARY N, L$ : déclaration d'une bibliothèque
N : numéro de la bibliothèque
L$ : nom absolu ou relatif de la bibliothèque (exemple : ma_lib.dll)

COMMAND CP$,CL$,N,T$,C$ : déclaration d'une commande
CP$ : nom de la commande pour PANORAMIC
CL$ : nom de la commande dans la bibliothèque (attention, CL$ est sensible à la casse : respectez majuscules et minuscules)
N : numéro de la bibliothèque dans laquelle on trouve la commande
T$ : chaine de caractères donnant le type de chaque paramètre : I (entier) R (réel) S (chaine de caractères)
C$ : convention d'appel de la commande

FUNCTION CP$,CL$,N,T$,C$ : déclaration d'une fonction
CP$ : nom de la fonction pour PANORAMIC
CL$ : nom de la fonction dans la bibliothèque (attention, CL$ est sensible à la casse : respectez majuscules et minuscules)
N : numéro de la bibliothèque dans laquelle on trouve la fonction
T$ : chaine de caractères donnant le type de chaque paramètre : I (entier) R (réel) S (chaine de caractères)
C$ : convention d'appel de la fonction

Le type de retour est dans le nom de la fonction Panoramic:
fonction "fn","fonction_dans_dll",1,"II","stdcall" définit que fonction_dans_dll retourne un réel
fonction "fn%","fonction_dans_dll",1,"II","stdcall" définit que fonction_dans_dll retourne un entier
fonction "fn$","fonction_dans_dll",1,"II","stdcall" définit que fonction_dans_dll retourne une chaine de caractères

Pour le moment, cela ne fonctionne :
- qu'avec 6 paramètres maximum,
- que lorsque les paramètres sont entiers (I)
- que lorsque les fonctions retournent des nombres
- le nombre de bibliothèques est limité à 10

correction de bugs :

- plantage dans CARET_POSITION()
- GRID_COLUMN_FIXED et GRID_ROW_FIXED acceptent maintenant 0 ligne ou 0 colonne
- le problème de click sur un objet (signalé ici https://panoramic.1fr1.net/t4419-un-mystere-a-resoudre) est corrigé
- la commande EXIT_SUB n'était pas reconnue
- la commande CREATE_HIDE ne s'appliquait pas aux FORM
- la commande 3D_DELETE n'agissait que sur les 3D_CUBE, 3D_BOX et 3D_SPHERE, les autres objets 3D n'étant pas détruits
- WIDTH sur un PICTURE refonctionne
- le positionnement des FORMs créées avec CREATE_HIDE

bugs ou problèmes connus (et pas encore corrigés faute de temps) :

- plantage avec TERMINATE
- OBJECT_PARENT() devrait se nommer PARENT()
- un objet TAB devrait pouvoir contenir un CONTAINER_TAB
- MOUSE_LEFT_DOWN() et MOUSE_RIGHT_DOWN() qui ne "fonctionnent qu'une fois" lorsque le bouton reste enfoncé

_________________
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Webdav username : panoramic@jack-panoramic password : panoramic123


Dernière édition par Jack le Jeu 10 Déc 2015 - 20:56, édité 1 fois
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyMer 9 Déc 2015 - 22:07

Je vais tester cela de suite !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: re   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyMer 9 Déc 2015 - 22:09

Merci Jack.
Je suis à jour.
Revenir en haut Aller en bas
Invité
Invité




Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyMer 9 Déc 2015 - 22:17

Merci Jack. J'ai téléchargé, mais je ne la regarde pas maintenant. J'ai trop à faire.
Revenir en haut Aller en bas
Marc

Marc


Nombre de messages : 2379
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyMer 9 Déc 2015 - 22:17

Merci Jack ! Very Happy
Revenir en haut Aller en bas
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyMer 9 Déc 2015 - 22:28

Première expérience avec LIBRARY / FUNCTION:
ça marche bien, dans les limites données par Jack. Il faut ajouter une restriction supplémentaire dans la documentation de la commande LIBRARY:
Citation :
Bibliothèques :
LIBRARY N, L$ : déclaration d'une bibliothèque
N : numéro de la bibliothèque (1<=N<=10)
L$ : nom absolu ou relatif de la bibliothèque (exemple : ma_lib.dll)
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 0:18

Une première anomalie:
Dans une fonction DLL définie par la commande FUNCTION, on ne peut pas utiliser handle(N) comme paramètre. Il faut affecter handle(N) à une variable de type entier, puis passer cette variable, pour que ça marche. Ceci génère une erreur "not correct arithmetic expression: error in function" à la ligne 8:
Code:
dim res%, url$, mot$
memo 1 : full_space 1 : bar_both 1
library 1,"KGF.dll"
function "GetHtml%","GetHtmlFromURL",1,"III","stdcall"

mot$="élève"
url$="http://www.systranet.com/fr/dictionary/french-english/"+mot$+"?"
res%=GetHtml%(adr(url$),handle(1),1)
message "Terminé - res%="+str$(res%)
end

Le problème est identique avec object_internal(N) et handle_canvas(N), à la place de handle(N).

Même ceci ne marche pas:
Code:
dim res%, url$, mot$
memo 1 : full_space 1 : bar_both 1
library 1,"KGF.dll"
function "GetHtml%","GetHtmlFromURL",1,"III","stdcall"

mot$="élève"
url$="http://www.systranet.com/fr/dictionary/french-english/"+mot$+"?"
res%=GetHtml%(adr(url$),int(handle(1)),1)
message "Terminé - res%="+str$(res%)
end

Mais ceci marche:
Code:
dim res%, url$, mot$, h%
memo 1 : full_space 1 : bar_both 1
library 1,"KGF.dll"
function "GetHtml%","GetHtmlFromURL",1,"III","stdcall"

mot$="élève"
url$="http://www.systranet.com/fr/dictionary/french-english/"+mot$+"?"
h% = handle(1)
res%=GetHtml%(adr(url$),h%,1)
message "Terminé - res%="+str$(res%)
end

Je pense, Jack, que là, il y a un ajustement à faire. Pourrais-tu considérer systématiquement que la valeur retournée par les fonctions handle(N), handle_canvas(n) et object_internal(N) sont des valeurs entières et non des flottants ? Cela ne posait aucun problème dans les versions précédentes !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 0:45

Un autre problème, certainement le mauvais message d'erreur qui s'affiche lors d'une erreur de programmation:

si, dans la commande FONCTION, j'utilise un autre numéro de librairie que celui utilisé dans la commande LIBRARY (ou s'il n'y a pas de commande LIBRARY), Panoramic affiche:
Citation :
(178) Library already defined at ...
Ce n'est pas le bon message, bien qu'il y ait une détection d'erreur à juste titre.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 0:52

Bonsoir Klaus,
Je ne comprends pas l'histoire des 3 «I». Pourrais-tu donner une explication ?
Je lirais la réponse demain, si tu peux l'expliquer.
Sleep Sleep
Revenir en haut Aller en bas
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 1:18

@Papydall:
Tu dis:
Citation :
Je ne comprends pas l'histoire des 3 «I». Pourrais-tu donner une explication ?
Cela concerne certainement la ligne suivante, de mes codes:
Code:
function "GetHtml%","GetHtmlFromURL",1,"III","stdcall"

Eh bien, cette ligne est la "déclaration" à l'interpréteur Panoramic, de la fonction de la DLL que je veux utiliser. Et pour cela, il faut que j'indique à Panoramic deux informations particulières en ce qui concerne les paramètres de la fonction à appeler: leur nombre, ainsi que le type de chaque paramètre. Jack a choisi de passer ces informations sous forme d'un seul paramètre de la commande PROCEDURE ou FUNCTION. La longueur de ce paramètre donne le nombre de paramètres à passer à la fonction DLL à appeler - dans notre cas, il s'agit de 3 paramètres. Il y a donc 3 caractères dans le paramètre à passer à la commande FUNCTION. Chacun de ces caractères donne le type du paramètre correspondant, dans la fonction de la DLL. Dans notre cas, il s'agit de 3 paramètres de type integer, et donc, 3 lettres "I" qui se suivent, ce qui donne le paramètre "III" à passer à la commande FUNCTION.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 1:23

Salut Klaus

Dans le code que tu as posté

Code:
dim res%, url$, mot$, h%
memo 1 : full_space 1 : bar_both 1
library 1,"KGF.dll"
function "GetHtml%","GetHtmlFromURL",1,"III","stdcall"

mot$="élève"
url$="http://www.systranet.com/fr/dictionary/french-english/"+mot$+"?"
h% = handle(1)
res%=GetHtml%(adr(url$),h%,1)
message "Terminé - res%="+str$(res%)
end

La ligne 4
Code:
function "GetHtml%","GetHtmlFromURL",1,"III","stdcall"

ne devrait-elle pas  être
Code:
function "GetHtml%","GetHtmlFromURL",1,"II","stdcall"

avec deux II au lieu de trois III, puisque l’appel de la fonction necéssite seulement deux integer dans la ligne 9
Code:
res%=GetHtml%(adr(url$),h%,1)

qui sont h% et 1 ?


Si ce que j'ai dis est une bêtise, fais en sorte que tu n'as rien lu ! pale



EDIT : on s'est croisé

C'est cosmos70 qui a demandé des explications sur les trois III

EDIT 2

Je me rends compte que j’ai dis une bêtise !
Il faut effectivement trois III puisque ce sont trois paramètre : adr(URL$), h%,1
Je pensais avoir vu 1 string et 2 integer Embarassed
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 1:51

Autant pour moi: c'est pour Cosmos70 et pas pour Papydall. Désolé de cette erreur.

Et, Papydall, tu as raison:
Citation :
Il faut effectivement trois III puisque ce sont trois paramètre : adr(URL$), h%,1
Je pensais avoir vu 1 string et 2 integer
En effet, la fonction GetHtmlFromURL est bien définie comme ceci:
Citation :
res% = DLL_call3("GetHtmlFromURL",adr(url$),handle(memo%),mode%)
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 1:58

Merci Klaus et bonne nuit.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 4:27

Waou !
J’ai enfin réussi à faire fonctionner ma fonction.
J’ai créé en free basic une DLL au doux nom de add.dll qui devrait additionner deux entiers.
Voici le code free basic de la DLL

Code:

Extern "Windows-MS"
Function add2 Alias "add2"(byval x as integer,byval y as integer) As Integer export
    function = x+y
End Function
end extern
J’ai sauvegardé ce code sur le bureau sous add.bas
Je l’ai compilé en mode ligne de commande : fbc –dll c:\users\acer\desktop\add.bas
J’obtiens sur le bureau add.dll

J’ai testé le code Panoramic suivant
Code:

DIM a,b
a = 4 : b = 6
library 1,"C:\Users\acer\Desktop\add.dll"
function "addition","add2",1,"II","stdcall"
print str$(a) + " + " + str$(b) + " = " + str$(addition(a,b))

A l’exécution j’obtiens ma récompense tant attendue, à savoir :
4 + 6 = 10

Je suis content !
Merci Jack
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jean Claude

Jean Claude


Nombre de messages : 5948
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 7:43

Merci Jack pour cette nouvelle version.

Je n'ai jamais utilisé de bibliothèque... il y a de l'apprentissage dans l'air.

A+
Revenir en haut Aller en bas
Invité
Invité




Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 13:56

Merci Klaus pour tes explications.
J'avais pensé que cela puissait être cela, mais l'approche me semblait trop bizarre. La méthode n'est pas commune.
Revenir en haut Aller en bas
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 18:45

@Jack:
En plus des différentes remarques que j'ai déjà faites concernant cette nouvelle version, je signale ici une restriction vraiment trop sévère et qui devrait vraiment être levée rapidement:

Un maximum de 10 définitions de fonctions ou procédures DLL sont autorisées !
Au-delà, Panoramic se plante avec une violation de mémoire.


C'est vraiment trop restrictif et bloque l'utilisation dans un programme réel. Pourrais-tu mémoriser les définitions des fonctions dans un tableau dynamique ou dans un TStringList, par exemple ? Enfin, quelque chose de dynamique ?

A titre d'exemple, j'ai voulu faire un module INCLUDE avec la définition de toutes les fonctions de KGF.dll, et un autre avec toutes les fonctions de BDR.dll. Or, dès les premières lignes, Panoramic se plante. Voici le début du module pour KGF.dll, avec deux lignes permettant de tester la SUB concernée:
Code:
' KGF_library.bas
'
' Ce module doit être inclus dan un programme par #INCLUDE.
' Cette directive doit être placée à la fin du source,
' afin d'éviter un décalage des numéros de ligne.
' Ce module contient les définitions des fonctions de KGF.dll,
' dans le contexte des versions Panoramic V0.9/27i3 et suivants.

KGF_library(1,"KGF.dll") : ' tester le module
message "ok"
end

sub KGF_library(n%,dll$)
  library n%,dll$
 
  ' ***** gestion des sockets client/server
  function "CreateServerSocket","CreateServerSocket",n%,"II","stdcall"
  function "DeleteServerSocket","DeleteServerSocket",n%,"","stdcall"
  function "GetServerSocket","GetServerSocket",n%,"","stdcall"
  function "CreateClientSocket","CreateClientSocket",n%,"III","stdcall"
  function "DeleteClientSocket","DeleteClientSocket",n%,"","stdcall"

  ' ***** fonctions diverses
  function "ResetKGF","ResetKGF",n%,"","stdcall"
  function "GetWindowProcessName","GetWindowProcessName",n%,"II","stdcall"
  function "GetWindowProcessHandles","GetWindowProcessHandles",n%,"II","stdcall"
  function "SetFormProperties","SetFormProperties",n%,"III","stdcall"
  function "GetHighPerformanceTimer","GetHighPerformanceTimer",n%,"I","stdcall"
exit_sub
  function "AssociateFileExtension","AssociateFileExtension",n%,"II","stdcall"
  function "DrawToCanvas","DrawToCanvas",n%,"IIIIII","stdcall"
  function "GetWindowsFoldersPath","GetWindowsFoldersPath",n%,"II","stdcall"
  function "DeleteFileToRecycleBin","DeleteFileToRecycleBin",n%,"I","stdcall"
  function "TestComboBox","TestComboBox",n%,"III","stdcall"
  function "ReadBinaryFileToPanoramic","ReadBinaryFileToPanoramic",n%,"IIII","stdcall"

  ' ***** fonctions designer
  function "DesignDrag","DesignDrag",n%,"II","stdcall"
  function "UnregisterObjectFromDesigner","UnregisterObjectFromDesigner",n%,"","stdcall"
  function "RegisterObjectForDesigner","RegisterObjectForDesigner",n%,"III","stdcall"
  function "DesignerFunction","DesignerFunction",n%,"IIII","stdcall"

  ' ***** fonctions XML
 
  function "LoadXmlFromFile","LoadXmlFromFile",n%,"I","stdcall"
  function "LoadXmlFromObject","LoadXmlFromObject",n%,"I","stdcall";
  function "LoadXmlFromString","LoadXmlFromString",n%,"I","stdcall"
  function "FreeXml","FreeXml",n%,"I","stdcall"
  function "GetPreviousXmlSister","GetPreviousXmlSister",n%,"I","stdcall"
  function "GetNextXmlSister","GetNextXmlSister",n%,"I","stdcall"
  function "GetXmlParent","GetXmlParent",n%,"I","stdcall"
  function "GetFirstXmlChild""GetFirstXmlChild",n%,"I","stdcall"
  function "GetXmlTop","I""GetXmlTop",n%,"I","stdcall"
  function "GetXmlData","GetXmlData",n%,"II","stdcall"
  function "SetXmlData","SetXmlData",n%,"III","stdcall"
  function "GetXmlName","GetXmlName",n%,"II","stdcall"
  function "SetXmlName","SetXmlName",n%,"IIII","stdcall"
  function "SelectXmlElementByPath","SelectXmlElementByPath",n%,"IIII","stdcall"
  function "GetXmlElementByAddress","GetXmlElementByAddress",n%,"III","stdcall"
  function "GetXmlElementAddress","GetXmlElementAddress",n%,"I","stdcall"
  function "SaveXmlToFile","SaveXmlToFile",n%,"II","stdcall"
  function "SaveXmlToMemo","SaveXmlToMemo",n%,"II","stdcall"
  function "SaveXmlToString","SaveXmlToString",n%,"II","stdcall"
  function "AddXmlElement","AddXmlElement",n%,"III","stdcall"
  function "DeleteXmlElement","DeleteXmlElement",n%,"I","stdcall"

  ' ... suite à venir...

end_sub

Tel quel, le programme fonctionne. Mais si l'on déplace la comande EXIT_SUB d'une ligne vers le bas, c'est le plantage.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jack
Admin
Jack


Nombre de messages : 2381
Date d'inscription : 28/05/2007

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 21:00

La limitation à 10 n'est bien sur que temporaire. J'avais fait cela "pour essai" et j'ai oublié de vous le mentionner. Embarassed
Il n'y aura bientôt plus aucune limitation.

_________________
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: re   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 21:33

Et voilà que Jack se met à faire des farces. Twisted Evil
Revenir en haut Aller en bas
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyJeu 10 Déc 2015 - 22:14

Ouf ! Merci, Jack !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptySam 12 Déc 2015 - 13:16

Jack, tant que tu es dans le cambouis pour la gestion des DLLs, pourrais-tu ajouter une fonction du type suivant:
Citation :
LIBRARY$(N)

utilisée comme ceci:

dim dll$
dll$ = library$(3)
if dll$="_"
   ...pas de librairie numéro 3
else
   ....dll$ contient le chemin et le nom de la DLL atachée au numéro 3
end_if

Ce serait utile, et cela correspondrait à la logique habituelle de Panoramic d'avoir une fonction du même nom que la commande pour retourner la valeur (WIDTH/WIDTH(), ACTIVE/ACTIVE(), ...)
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
pascal10000

pascal10000


Nombre de messages : 812
Localisation : Troyes
Date d'inscription : 05/02/2011

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 EmptyMar 15 Déc 2015 - 8:53

bjr jack

à la dernière version de panoramic
les thèmes des boutons on disparu!
les boutons sont au theme de W98

Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 <a href=Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Captur12" />
Revenir en haut Aller en bas
Contenu sponsorisé





Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty
MessageSujet: Re: Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3   Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3 Empty

Revenir en haut Aller en bas
 
Version instantanée du 9 dec 2015 : PANORAMIC V 0.9.27i3
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Version instantanée du 15 déc 2015 : PANORAMIC V 0.9.27i5
» Version instantanée du 4 nov 2015 : PANORAMIC V 0.9.27i2
» Version instantanée du 30 mai 2015 : PANORAMIC V 0.9.26i6
» Version instantanée du 2 janvier 2015 : PANORAMIC V 0.9.26i4
» Version instantanée du 7 janvier 2015 : PANORAMIC V 0.9.26i5

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Ce qui est en cours ...-
Sauter vers: