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
» bouton dans autre form que 0
KGF_dll - nouvelles versions - Page 31 Emptypar leclode Aujourd'hui à 13:59

» KGF_dll - nouvelles versions
KGF_dll - nouvelles versions - Page 31 Emptypar Klaus Aujourd'hui à 11:41

» Gestion d'un système client-serveur.
KGF_dll - nouvelles versions - Page 31 Emptypar Klaus Aujourd'hui à 10:23

» PANORAMIC V 1
KGF_dll - nouvelles versions - Page 31 Emptypar papydall Sam 4 Mai 2024 - 3:43

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
KGF_dll - nouvelles versions - Page 31 Emptypar Froggy One Jeu 2 Mai 2024 - 11:16

» @Jack
KGF_dll - nouvelles versions - Page 31 Emptypar Jack Mar 30 Avr 2024 - 20:40

» trop de fichiers en cours
KGF_dll - nouvelles versions - Page 31 Emptypar papydall Lun 29 Avr 2024 - 23:39

» Une calculatrice en une ligne de programme
KGF_dll - nouvelles versions - Page 31 Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
KGF_dll - nouvelles versions - Page 31 Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
KGF_dll - nouvelles versions - Page 31 Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
KGF_dll - nouvelles versions - Page 31 Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
KGF_dll - nouvelles versions - Page 31 Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Dessine-moi une galaxie
KGF_dll - nouvelles versions - Page 31 Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
KGF_dll - nouvelles versions - Page 31 Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
KGF_dll - nouvelles versions - Page 31 Emptypar papydall Dim 21 Avr 2024 - 23:30

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le deal à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

 

 KGF_dll - nouvelles versions

Aller en bas 
+12
JL35
Oscaribout
bignono
Pedro
pascal10000
silverman
Jicehel
papydall
Minibug
Marc
Yannick
Klaus
16 participants
Aller à la page : Précédent  1 ... 17 ... 30, 31, 32 ... 35 ... 40  Suivant
AuteurMessage
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyMer 12 Juin 2019 - 17:24

Nouvelle version:
KGF.dll V8.89 du 12/06/2019

Nouveautés:
- toutes les fonctions retournant un string à Panoramic acceptent maintenant indifféremment ADR(s$) et OBJECT_INTERNAL(obj%) et HANDLE(memo%) dans le paramère indiquant le ou les strings à retourner. Dans l'immédiat, tout ceci ne fait pas l'objet d'une mise à jour de la documentation - les fonctions concernées sont trop nombreuses.

Modules modifiés:
KGF.dll

La doc et les sources sont inchangées.

L'effet net de ce changement est le suivant:
- sans aucun changement dans les codes Panoramic existants, les programmes continueront à fonctionner exactement comme avant.
- si l'on passe le handle d'un mémo Panoramic à la place de l'adresse d'une variable string, alors le texte retourné se trouvera dans le mémo visé. Le texte peut être long, peut avoir de multiples lignes etc.

Pour info, on peut récupérer le texte d'un mémo dans une variable string de la manière suivante:
Code:
s$ = TEXT$(memo%)
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyVen 14 Juin 2019 - 14:42

Nouvelle version:
KGF.dll V8.90 du 14/06/2019

Nouveautés:
- A de très rares exceptions près, toutes les fonctions de KGF.dll utilisent maintenant le mécanisme supposé compatible avec la version compilée, pour le passage de chaînes de caractères, aussi bien en entrée qu'en sortie.

Modules modifiés:
KGF.dll

La doc et les sources sont inchangées.

Cette modification touche plus de la moitié des fonctions de KGF.dll, et la totalité des sources a été révisée. Pour les chaînes de caractères en sortie, c'était déjà fait depuis la version précédente. Maintenant, c'est également fait pour les chaînes de caractères en entrée. Le grand changement est interne - pour l'utilisateur, rien ne change et les sources Panoramic restent compatible. Par contre, même en entrée, on a maintenant le choix de placer la chaîne de caractères dans une variable passée par ADR(s$), ou alors dans un mémo et passer le texte par HANDLE(memo%) ou même OBJECT_INTERNAL(memo%).

Ce mécanisme de passage est maintenant assuré par une fonction unique de service interne. Si l'interface avec Panoramic compilé devait poser problème, il deviendra alors aisé d'y remédier en modifiant un seul et unique endroit.

NOTE IMPORTANTE

Du fait de ces milliers de modifications, il est possible que des instabilités aient été introduites dans KGF.dll. Dans les jours à venir, je serai très attentif à d'éventuels retours d'expérience indiquant des bugs et je corrigerai immédiatement. Pour plus de sécurité, j'ai mis cette version uniquement sur mon site internet (et accessible au téléchargement via la signature de mes posts), et j'ai laissé la version précédente dans mon WebDav, dossier "KGF DLL".
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Pedro

Pedro


Nombre de messages : 1555
Date d'inscription : 19/01/2014

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyVen 14 Juin 2019 - 16:55

Bonjour.

J'ai téléchargé et testé la nouvelle version de kgf.dll, sans rencontrer de problème particulier pour l'instant.

Merci Klaus.
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyVen 14 Juin 2019 - 17:05

SUPER ! Merci, Pedro !

Voici un petit code Panoramic montrant les nouvelles possibilités de passation d'une chaîne de caractères à Panoramic. La fonction test_GetStringFromPanoramic utilisée ici est nouvelle et non documentée, utilisée uniquement pour des tests. Son but est exclusivement de récupérer la chaîne de caractères passée en paramètre et de l'afficher:
Code:
' test_GetStringFromPanoramic.bas

dim s$, res%
s$ = "chaîne dans variable s$"

memo 1 : full_space 1 : width 1,width(1)/2 : bar_both 1
item_add 1,"mémo 1 ligne 1"
item_add 1,"mémo 1 ligne 2"
memo 2 : full_space 2 : width 2,width(1) : left 2,width(1) : bar_both 2
item_add 2,"mémo 2 ligne 1"
item_add 2,"mémo 2 ligne 2"

dll_on "KGF.dll"
res% = dll_call1("test_GetStringFromPanoramic",adr(s$))
res% = dll_call1("test_GetStringFromPanoramic",handle(1))
res% = dll_call1("test_GetStringFromPanoramic",object_internal(2))
end

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptySam 15 Juin 2019 - 12:46

Nouvelle version:
KGF.dll V8.91 du 15/06/2019

Nouveautés:
- nouvelle fonction PopupMenuTarget
- le passage de paramètres en chaîne de caractères est maintenant compatible avec la version compilée de Panoramic, selon la méthode V1 décrite par Jack


Modules modifiés:
KGF.dll
KGF.chm


La doc est à jour. Les sources sont inchangées.

Cette version n'est pour le moment distribuée que sur mon site internet (téléchargement via les liens dans ma signature). Le WebDav n'est pas encore mis à jour, pour des raisons de sécurité. En effet, cette version modifié le comportement de plus de la moitie de toutes les fonctions de KGF.dll, et je préfère garder pendant quelque temps la version stable pour ceux qui rencontreraient des problèmes.

N'hésitez pas à me signaler toute anomalie, version interprétée ou compilée - je resterai vigilant et corrigerai le plus rapidement possible !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 16 Juin 2019 - 18:07

Nouvelle version:
KGF.dll V8.92 du 16/06/2019

Nouveautés:
- nouvelles fonction: PopupMenuLocation, SetProgressBarColor, SetMultiSelectionLimitOfIconListBox,
- nouvelles fonction: GetMacAddress, UseClientAreaAsRegion, ClearWindowRegion, Calculate3D
- fonction KGFupdate: vérifier la disponibilité d'une nouvelle version, confirmation avant téléchargement


Modules modifiés:
KGF.dll
KGF.chm


La doc est à jour. Les sources sont inchangées.

Cette version apporte une sérrie conséquente de modifications.
Dans les "nouvelles fonctions" d'abord: seule la fonction PopupMenuLocation est vraiment nouvelle, en réalité. Les autres existaient déjà, mais étaient seulement signalées par un petit message perdu dans la foule des posts sur le forum, et elles n'étaient pas documentées. C'est chose faite maintenant: la doc est complète pour chacune de ces fonctions. La seule fonction PopupMenuLocation vraiment nouvelle est un clône de la commande DROP_DOWN de Panoramic, mais en laissant le choix des coordonnées de positionnement du menu.
Ensuite, la fonction KGFupdate a été préfixée d'une phase de vérification. Elle vérifie maintenant si une nouvelle version est disponible, affiche les informations des deux versions et demande l'autorisation de mise à jour à l'utilisateur. Et seulement en cas de réponse positive, tout le processus de mise à jour est enclenché. Je rappelle ici que ceci implique la fermeture automatique du programme en cours, le téléchargement de KGF.zip à partir de mon site, la décompression en KGF.dll et la mise en place dans le dossier dans lequel se situait la DLL actuellement sur la machine. Puis, le programme interrompu sera relancé automatiquement. Il est donc intéressant d'appeler cette fonction en tout début de programme, directement après la commande DLL_ON.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyMar 18 Juin 2019 - 14:14

Nouvelle version:
KGF.dll V8.93 du 17/06/2019

Nouveautés:
- objet TreeView: corriger un bug dans la gestion des flèches, créer et gérer les "attributs" des noeuds
- objet TreeView: chaque élément peut maintenant avoir un ou plusieurs attributs (couples nom=valeur)
- nouvelles fonctions: CreateHtmlTreeView, TreeViewNodeAttribute
- GetTreeViewInformation: nouveaux codes action 9 et 10
- retour de chaînes de caractères de la DLL vers Panoramic:
on peut maintenant utiliser ADR(s$), HANDLE(memo%),OBJECT_INTERNAL(memo%),HANDLE(list%)
- correction de quelques erreur dans la documentation


Modules modifiés:
KGF.dll
KGF.chm


La doc est à jour. Les sources sont inchangées.

Ceci une avancée majeure. En-dehors de quelques corrections mineures dans la DLL et dans la doc, l'objet TreeView a été profondément remanié. Chaque élément peut maintenant recevoir un ou plusieurs attributs qui sont des couples "nom=valeur". Leur nombre n'est pas limité. Il y a également une extension du mécanisme de passage de paramètres sous forme de chaînes de caractères: maintenant, HANDLE(list%) peut également être utilisé, aussi bien en entrée qu'en sortie.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyMer 19 Juin 2019 - 20:34

J'apporte quelques précisions supplémentaires sur cette nouvelle version, et en particulier sur la nouveauté des "attributs" pour un noeud d'un TreeView.

Ceci peut avoir des applications très variées, et peut s'appliquer des des domaines divers.

Prenons la généalogie: on peut imaginer des attributs du genre "marié le=...", "décédé le=...", "profession=..." etc. Même des chemins vers des fichiers images tels que "Photo identité=C:\...\photo1.jpg".

Ou alors la populaire application "contacts" avec des attributs Nom, Prénom, Téléphone, Mail, Adresse, CodePostal, Ville, Remarques, ... . On peut imaginer une arborescence du genre Professionnel, Privé, Fournisseurs, Clients, Prospects, Médecins, ... et avoir une liste de contacts sous chacun de ces noeuds. On peut associer à chaque noed, si besoin, des attributs avec des photos, des documents texte (factures, ...), des liens URL (site internet, ...) etc.

De manière générale, on peut ajouter autant d'annotations que nécessaire, à n'importe quel élément d'un TreeView. Le nombre des attributs n'est pas limité, et il n'y a pas de restrictions sur leur nom. Ce sont de simples chaînes de caractères, c'est tout.

On dispose là d'un outil très outil très puissant pour structurer des informations hiérarchisables, quelque soit leur nature.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptySam 22 Juin 2019 - 2:54

Nouvelle version:
KGF.dll V8.94 du 2/06/2019

Nouveautés:
- KGF.dll peut maintenant être appelée indifféremment de la version interprétée ou la version compilée de Panoramic

Modules modifiés:
KGF.dll

La doc et les sources sont inchangées.

Deux corrections ont été faites:
1. lors de la commande DLL_ON, la routine interne appelée pour construire l'environnement de KGF.dll a été modifiée de sorte à ne plus chercher à récupérer le numéro de version de Panoramic.
2. la fonction interne permettant de prendre un paramètre string via ADR(s$) en provenance de Panoramic a été adaptée à l'environnement compilé.


Le programme suivant marche maintenant aussi bien en interprété qu'en compilé:
Code:
' test_GetStringFromPanoramic.bas

dim s$, res%
s$ = "chaîne dans variable s$"
width 0,900
memo 1 : full_space 1 : width 1,width(1)/3 : bar_both 1
item_add 1,"mémo 1 ligne 1"
item_add 1,"mémo 1 ligne 2"
memo 2 : full_space 2 : width 2,width(1) : left 2,width(1) : bar_both 2
item_add 2,"mémo 2 ligne 1"
item_add 2,"mémo 2 ligne 2"
list 3 : full_space 3 : width 3,width(1) : left 3,left(2)+width(1)
item_add 3,"list 3 ligne 1"
item_add 3,"list 3 ligne 2"

dll_on "KGF.dll"
res% = dll_call1("test_GetStringFromPanoramic",adr(s$))
res% = dll_call1("test_GetStringFromPanoramic",handle(1))
res% = dll_call1("test_GetStringFromPanoramic",object_internal(2))
res% = dll_call1("test_GetStringFromPanoramic",handle(3))
' object_internal() avec LIST  <== impossible !
end


Bien sûr, il faut rester prudent. J'ai fait ce que je pouvais pour que ces modifications s'appliquent à l'ensemble des fonctions de KGF.dll (près de 1200 fonctions, tout de même !). Mais un problème peut toujours subsister, et je le corrigerai aussitôt qu'il sera signalé.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyMer 26 Juin 2019 - 0:05

Nouvelle version:
KGF.dll V8.95 du 25/06/2019

Nouveautés:
- restructuration globale interne (sans incidence visibe par Panoramic)
- correction de passage d'une chaîne vide de Panoramic vers la DLL en environnement compilé
- nouvelles fonctions: WBHtmlToPanoramic, WB_HtmlToPanoramic


Modules modifiés:
KGF.dll

La doc et les sources sont inchangées.

La restructuration interne a été rendue nécessaire pour des raisons techniques et bien que représentant un travail considérable, n'a aucune incidence sur la façon dont un programme Panoramic utilise la DLL

Suite à un signalement de Pedro, j'ai constaté que le passage d'une chaîne de caractères vide de Panoramic vers la DLL en mode Panoramic compilé provoquait un plantage brutal. Ceci est corrigé.

Deux nouvelles fonctions, dont la documentation sera mise à jour prochainement:
Code:
res% = dll_call2("WBHtmlToPanoramic",act%,sortie%)
res% = dll_call3("WB_HtmlToPanoramic",WB%,act%,sortie%)
Ces deux fonctions retournent le code HTML complet de la page chargée actuellement dans le WebBrowser, en fonction du code action. Le résultat peut être chargé dans:
- une chaîne de caractères: adr(s$)
- un mémo: handle(memo%) ou object_internal(memo%)
- unlist: handle(list%)
Le code action peut être:
0 = le code HTML tel que retourné par le WebBrowser
1 = le code HTML en supprimant tous les CR et en remplaçant tous les LF par des CR LF
2 = le code HTML en supprimant tous les CR et tous les LF
3 = lecode HTML présenté "joliment" avec indentations etc (action en cours de réalisation)

Le code retour est 0 si ok et -1 si erreur.
Si le paramètre sortie% est 0 (zéro), alors la fonction retourne dans le code retour le nombre de caractères du code HTML à retourner selon le code action, sans retourner évidemment ce code HTML. Ceci permet de réserver d'emblée le nombre de caractères nécessaires.


Dernière édition par Klaus le Mer 26 Juin 2019 - 12:05, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyMer 26 Juin 2019 - 1:07

Le code action 3 des nouvelles fonctions WBHtmlToPanoramic et WB_HtmlToPanoramic est opérationnel, en tout cas pour la reconnaissance de certaines balises de base. Ci-dessous un programme de démo: il charge la page d'accueil de mon site internet dans un objet WebBrowser, affiche dans un mémo le code HTML brut retourné par le browser, puis dans un autre mémo de code formatté (entièrement codé par mes soins). La ligne 28 contient une commande IF permettane de choisir entre le formattage par la fonction DLL (actuellement activé) ou par le programme Panoramic:
Code:
' test_WBEditMode.bas

label EditOn, EditOff

  dim res%, url$, WB%, s$, i%, s1$, indent$, opn%, cls%, scr%, n%
  url$ = "https://klauspanoramic.000webhostapp.com/"
'  url$ = "google.fr"
  
  button 1 : top 1,10 : left 1,10 : caption 1,"Edit ON" : on_click 1,EditOn
  button 2 : top 2,35 : left 2,10 : caption 2,"Edit OFF" : on_click 2,EditOff  

  full_space 0
  
  dll_on "KGF.dll"
  res% = dll_call1("WB_SetBrowserType",0)
  WB% = dll_call1("WB_Create",handle(0))
  res% = dll_call5("WB_Locate",WB%,150,10,400,height_client(0)-10)
  res% = dll_call2("WB_Url",WB%,adr(url$))
  res% = dll_call3("WB_ScrollBars",WB%,3,3)
  
  memo 3 : top 3,10 : left 3,550
    width 3,400 : height 3,height_client(0)-10
    bar_both 3
  memo 4 : top 4,10 : left 4,950
    width 4,400 : height 4,height_client(0)-10
    bar_both 4

if 1=1       : '  1=1: formatter par la DLL   1=2: formatter en Panoramic
  s1$ = string$(50000," ")
  res% = dll_call3("WB_HtmlToPanoramic",WB%,2,adr(s1$))
  s1$ = trim$(s1$)
  text 3,s1$
  
  s1$ = string$(50000," ")
  res% = dll_call3("WB_HtmlToPanoramic",WB%,3,adr(s1$))
  s1$ = trim$(s1$)
  text 4,s1$
else
  s1$ = string$(50000," ")
  res% = dll_call3("WB_HtmlToPanoramic",WB%,2,adr(s1$))
  s1$ = trim$(s1$)
  text 3,s1$      
  
  s$ = ""
  indent$ = ""
  scr% = 0
  i% = instr(s1$,"<")
  while i%>0
    opn% = 0
    cls% = 0
    if i%>0
      if i%=1
'        s$ = "<"
        s1$ = Mid$(s1$,2,len(s1$))
        opn% = 1
        cls% = 0
        indent$ = indent$ + "|   "
      else
        s$ = s$ + "<" + Left$(s1$,i%-1)+chr$(13)+chr$(10)
        
        if scr%=0
          tag("head")
          tag("body")
          tag("style")
          tag("div")
          tag("p")
          tag("h")
          tag("a")
          tag("ul")
          tagunclosed("li")
          tagunclosed("br")
          tag("span")
          tag("nobr")
          tag("center")
'          tag("style")
        end_if
        
        tagscript()
        
        if opn%=1
          s$ = s$ + indent$
          indent$ = indent$ + "|   "
        end_if
        if cls%=1
          indent$ = left$(indent$,len(indent$)-4)
          s$ = s$ + indent$
        end_if
        s1$ = mid$(s1$,i%+1,len(s1$))
      end_if
      i% = instr(s1$,"<")
    end_if
  end_while
  if len(s1$)>0 then s$ = s$ + s1$
  text 4,s$
end_if
  end
  
EditOn:
  res% = dll_call2("WB_EditMode",WB%,1)
  return
  
EditOff:
  res% = dll_call2("WB_EditMode",WB%,0)
  return
  
sub tag(tag$)  
  n% = len(tag$)      
          if lower$(mid$(s1$,i%,n%+1))="<"+tag$
' message "open "+mid$(s1$,i%,n%+1)          
            opn% = 1
            cls% = 0
          end_if
          if lower$(mid$(s1$,i%,n%+2))="</"+tag$
' message "close "+mid$(s1$,i%,n%+2)          
            opn% = 0
            cls% = 1
          end_if
end_sub

sub tagunclosed(tag$)  
  n% = len(tag$)      
          if lower$(mid$(s1$,i%,n%+1))="<"+tag$
' message "open "+mid$(s1$,i%,n%+1)
            opn% = 0
            cls% = 0
            s$ = left$(s$,len(s$)-3) + chr$(13)+chr$(10) + indent$
          end_if
          if lower$(mid$(s1$,i%,n%+2))="</"+tag$
' message "close "+mid$(s1$,i%,n%+2)          
            opn% = 0
            cls% = 0
            s$ = left$(s$,len(s$)-3) + chr$(13)+chr$(10) + indent$
          end_if
end_sub

sub tagscript()
        if lower$(mid$(s1$,i%,7))="<script"  
          opn% = 1
          cls% = 0
          scr% = 1
        end_if
        if lower$(mid$(s1$,i%,8))="</script"  
          opn% = 0
          cls% = 1
          scr% = 0
        end_if
end_sub        

  
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyJeu 27 Juin 2019 - 9:04

Nouvelle version:
KGF.dll V8.96 du 27/06/2019

Nouveautés:
- documentation des fonctions: WBHtmlToPanoramic, WB_HtmlToPanoramic
- nouvelles fonctions: BrowserCreate, BrowserDelete


Modules modifiés:
KGF.dll
KGF.chm


La doc est à jour. Les sources sont inchangées.

Les nouvelles fonctions BrowserCreate et BrowserDelete permettent de charger simplement un browser dans une form, un panel etc et de naviguer directement vers une URL. Le browser va se dimensionner automatiquement aux dimensions de la zone client de l'objet de destination qu'il va remplir entièrement.

Le programme de démo ci-après permet de choisir parmi les 4 browsers qui sont actuellement testés et opérationnels (à condition qu'ils soient installés, bien sûr):
Opera, Firefox, Pale Moon, Chrome
Le browser Edge ne pourra jamais fonctionner dans cet environnement. Il n'expose pas de handle qui permettrait de le manipuler.

L'exemple fourni utilise la page d'accueil de Mappy pour la démonstration. Malheureusement, ce site ne peut pas être montré par l'objet WebBrowser actuel, car de dernier est basé sur un noyau Internet Explorer trop ancien.
Code:
' Mappy.bas

label lancer, arreter

dim res%, WB%, Browser$, NomBrowser$, Options$, url$, ID%

  dll_on "KGF.dll"
  
  full_space 0
  panel 1 : top 1,30 : left 1,200 : width 1,800 : height 1,600
  
  button 10 : top 10,10 : left 10,10 : caption 10,"Start" : on_click 10,lancer
  button 11 : top 11,35 : left 11,10 : caption 11,"End" : on_click 11,arreter
  
  combo 20 : top 20,10 : left 20,200
    item_add 20,"Opera"
    item_add 20,"Firefox"
    item_add 20,"Pale Moon"
    item_add 20,"Chrome"
    item_add 20,"Edge (inactif)"
  res% = dll_call2("SelectComboBoxItem",handle(20),2)
end

lancer:
  select item_index(20)
    case 1: ' Opera
       Options$ = ""
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "opera"
       NomBrowser$ = "Mappy -"
    case 2: ' Firefox
       ' pour Firefox:    (créer au préalable le profile UtilisateurKGF" avec l'URL "config=profiles"
       Options$ = "-P "+chr$(34)+"UtilisateurKGF"+chr$(34)+" -no-remote"
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "firefox"
       NomBrowser$ = "Mappy -"
    case 3: ' Pale Moon
       Options$ = ""    
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "palemoon"
       NomBrowser$ = "Mappy -"
    case 4: ' Chrome
       Options$ = "-incognito --new-window"
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "chrome"
       NomBrowser$ = "Mappy -"
    case 5: ' Edge
      message "Désolé - Edge n'est pas utilisable ici !"
      return
       Options$ = ""
       url$ = ""
       Browser$ = "microsoft-edge:https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       NomBrowser$ = "MicrosoftEdge"
  end_select
  ID% = dll_call5("BrowserCreate",handle(1),adr(Browser$),adr(NomBrowser$),adr(Options$),adr(url$))
  return
  
arreter:
  ID% = dll_call1("BrowserDelete",ID%)
  return
  
end
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 0:29

Nouvelle version:
KGF.dll V8.97 du 29/06/2019

Nouveautés:
- BrowserCreate: le nom du browser peut maintenant être complété par un suffixe kiosk:
palemoon ou palemoonkiosk, firefox ou firefoxkiosk, opera ou operakiosk, chrome ou chromekiosk
Ces noms peuvent maintenant être indiqués en minuscules comme avant, mais aussi en Majuscules, ou un mélange des deux, comme FirefoxKiosk, par exemple.


Modules modifiés:
KGF.dll
KGF.chm

La doc et les sources sont à jour.

Le mode kiosk permet de n'afficher que la fenêtre de navigation, sans la barre de titre, les menus et les barres d'outils. Voici la démo:
Code:
' Mappy.bas

label lancer, arreter, tick

dim res%, WB%, Browser$, NomBrowser$, Options$, url$, ID%, hnd%, x%, y%

  dll_on "KGF.dll"
  
  full_space 0
  panel 1 : top 1,30 : left 1,200 : width 1,800 : height 1,600
  
  button 10 : top 10,10 : left 10,10 : caption 10,"Start" : on_click 10,lancer
  button 11 : top 11,35 : left 11,10 : caption 11,"End" : on_click 11,arreter
  
  combo 20 : top 20,10 : left 20,200
    item_add 20,"Opera"                    : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Opera Kiosk"              : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Firefox"                  : ' pas de fenêtre enfant
    item_add 20,"Firefox Kiosk"            : ' pas de fenêtre enfant
    item_add 20,"Pale Moon"                : ' pas de fenêtre enfant
    item_add 20,"Pale Moon Kiosk"          : ' pas de fenêtre enfant
    item_add 20,"Chrome"                   : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Chrome Kiosk"                   : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Edge (inactif)"          
  res% = dll_call2("SelectComboBoxItem",handle(20),3)

' memo 21 : top 21,10 : left 21,1010 : width 21,300 : height 21,600 : bar_both 21
' timer 22 : timer_interval 22,200 : on_timer 22,tick : timer_off 22

end


lancer:
  select item_index(20)
    case 1: ' Opera
       Options$ = ""
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "opera"
       NomBrowser$ = "Mappy -"
    case 2: ' Opera
       Options$ = ""
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "operakiosk"
       NomBrowser$ = "Mappy -"
    case 3: ' Firefox
       ' pour Firefox:    (créer au préalable le profile UtilisateurKGF" avec l'URL "config=profiles"
       Options$ = " -P "+chr$(34)+"UtilisateurKGF"+chr$(34)+" -no-remote"
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "firefox"
       NomBrowser$ = "Mappy -"
    case 4: ' Firefox Kiosk
       ' pour Firefox:    (créer au préalable le profile UtilisateurKGF" avec l'URL "config=profiles"
       Options$ = " -P "+chr$(34)+"UtilisateurKGF"+chr$(34)+" -no-remote"
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "firefoxkiosk"
       NomBrowser$ = "Mappy -"
    case 5: ' Pale Moon
       Options$ = ""    
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "palemoon"
       NomBrowser$ = "Mappy -"
    case 6: ' Pale Moon Kiosk
       Options$ = ""    
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "palemoonkiosk"
       NomBrowser$ = "Mappy -"
    case 7: ' Chrome
       Options$ = "-incognito --new-window"
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "chrome"
       NomBrowser$ = "Mappy -"
    case 8: ' Chrome Kiosk
       Options$ = "-incognito --new-window"
       url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       Browser$ = "chromekiosk"
       NomBrowser$ = "Mappy -"
    case 9: ' Edge
      message "Désolé - Edge n'est pas utilisable ici !"
      return
       Options$ = ""
       url$ = ""
       Browser$ = "microsoft-edge:https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
       NomBrowser$ = "MicrosoftEdge"
  end_select
  ID% = dll_call5("BrowserCreate",handle(1),adr(Browser$),adr(NomBrowser$),adr(Options$),adr(url$))
  if ID%=0 then return
' res% = dll_call2("GetProcessChildWindowHandle",ID%,handle(21))
'  timer_on 22
  return
  
arreter:
'  timer_off 22              
  ID% = dll_call1("BrowserDelete",ID%)
  return
  
tick:
'  timer_off 22
  res% = dll_call2("GetAbsoluteMousePosition",adr(x%),adr(y%))
  res% = dll_call2("GetObjectUnderPosition",x%,y%)
  caption 0,str$(res%)
'  timer_on 22
  return
  
end

sub CreerProjetXUL(URL$)
  if dir_exists("KBrowser")=0 then dir_make "KBrowser"        
  dir_change "KBrowser"
    if file_exists("chrome.manifest")=1 then file_delete "chrome.manifest"
    file_open_write 1,"chrome.manifest"
      file_writeln 1,"manifest chrome/chrome.manifest"
    file_close 1          
    if file_exists("KMappy.ini")=1 then file_delete "KMappy.ini"
    file_open_write 1,"KMappy.ini"
      file_writeln 1,"[App]"
      file_writeln 1,"Vendor=Klaus"
      file_writeln 1,"Name=KMappy"
      file_writeln 1,"Version=1.0"
      file_writeln 1,"BuildID=20100901"
      file_writeln 1,"ID=xulapp@xultest.org"
      file_writeln 1,""
      file_writeln 1,"[Gecko]"
      file_writeln 1,"MinVersion=1.8"
      file_writeln 1,"MaxVersion=200.*"      
    file_close 1  
            
    if dir_exists("chrome")=0 then dir_make "chrome"
    dir_change "chrome"
      if file_exists("chrome.manifest")=1 then file_delete "chrome.manifest"
      file_open_write 1,"chrome.manifest"
        file_writeln 1,"content KMappy content/"
      file_close 1
      if dir_exists("content")=0 then dir_make "content"
      dir_change "content"
        if file_exists("KMappy.xul")=1 then file_delete "KMappy.xul"
        file_open_write 1,"KMappy.xul"
          file_writeln 1,"<?xml version="+chr$(34)+"1.0"+chr$(34)+"?>"
          file_writeln 1,"<?xml-stylesheet href="+chr$(34)+"chrome://global/skin/"+chr$(34)+" type="+chr$(34)+"text/css"+chr$(34)+"?>"
          file_writeln 1,"<window id="+chr$(34)+"main"+chr$(34)+" title="+chr$(34)+"KMappyW"+chr$(34)+" width="+chr$(34)+"300"+chr$(34)+" height="+chr$(34)+"300"+chr$(34)+" xmlns="+chr$(34)+"http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"+chr$(34)+">"
          file_writeln 1,"  <script type="+chr$(34)+"application/javascript"+chr$(34)+" src="+chr$(34)+"chrome://chrome/content/KBrowser.js"+chr$(34)+"/>"
          file_writeln 1,"  <caption label="+chr$(34)+"KMappyF"+chr$(34)+"/>"
          file_writeln 1,"  <iframe id="+chr$(34)+"content-body"+chr$(34)+" src="+chr$(34)+URL$+chr$(34)+" flex="+chr$(34)+"1"+chr$(34)+"/>"
          file_writeln 1,"</window>"    
        file_close 1
        if file_exists("KMappy.js")=1 then file_delete "KMappy.js"
        file_open_write 1,"KMappy.js"
        file_close 1  
      dir_change ".."              : ' retour de \content
    dir_change ".."              : ' retour de \chrome
 
    if dir_exists("defaults")=0 then dir_make "defaults"
    dir_change "defaults"
      if dir_exists("preferences")=0 then dir_make "preferences"
      dir_change "preferences"
        if file_exists("prefs.js")=1 then file_delete "prefs.js"
        file_open_write 1,"prefs.js"
          file_writeln 1,"pref("+chr$(34)+"toolkit.defaultChromeURI"+chr$(34)+", "+chr$(34)+"chrome://KBrowser/content/KBrowser.xul"+chr$(34)+");"
        file_close 1
      dir_change ".."              : ' retour de \préférences    
    dir_change ".."              : ' retour de \defaults
    
    if dir_exists("extensions")=0 then dir_make "extensions"
    
    if dir_exists("updates")=0 then dir_make "updates"
    dir_change "updates"
      if dir_exists("0")=0 then dir_make "0"
    dir_change ".."              : ' retour de \updates
    
  dir_change ".."                : ' retour de \KBrowser
end_sub

EDIT

J'ai mis à jour l'intégralité des sources de KGF.dll dans mon WebDav, dossier Sources\KGF.


Dernière édition par Klaus le Dim 30 Juin 2019 - 15:59, édité 1 fois
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 15:55

Nouvelle version:
KGF.dll V8.98 du 30/06/2019

Nouveautés:
- BrowserCreate: si la version ...kiosk est choisie, la touche F11 est déactivée sur ce browser pour éviter de sortir du mode kiosk

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

La démo:
Code:
' Mappy.bas

label lancer, arreter

dim res%, WB%, Browser$, NomBrowser$, Options$, url$, ID%, hnd%, x%, y%

  dll_on "KGF.dll"
 
  full_space 0
  panel 1 : top 1,30 : left 1,200 : width 1,800 : height 1,600
 
  button 10 : top 10,10 : left 10,10 : caption 10,"Start" : on_click 10,lancer
  button 11 : top 11,35 : left 11,10 : caption 11,"End" : on_click 11,arreter
 
  combo 20 : top 20,10 : left 20,200
    item_add 20,"Opera"                    : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Opera Kiosk"              : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Firefox"                  : ' pas de fenêtre enfant
    item_add 20,"Firefox Kiosk"            : ' pas de fenêtre enfant
    item_add 20,"Pale Moon"                : ' pas de fenêtre enfant
    item_add 20,"Pale Moon Kiosk"          : ' pas de fenêtre enfant
    item_add 20,"Chrome"                  : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Chrome Kiosk"                  : ' première fenêtre enfant est l'affichage seul
    item_add 20,"Edge (inactif)"         
  res% = dll_call2("SelectComboBoxItem",handle(20),3)

end


lancer:
  select item_index(20)
    case 1: ' Opera
      Options$ = ""
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "opera"
      NomBrowser$ = "Mappy -"
    case 2: ' Opera
      Options$ = ""
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "operakiosk"
      NomBrowser$ = "Mappy -"
    case 3: ' Firefox
      ' pour Firefox:    (créer au préalable le profile UtilisateurKGF" avec l'URL "config=profiles"
      Options$ = " -P "+chr$(34)+"UtilisateurKGF"+chr$(34)+" -no-remote"
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "firefox"
      NomBrowser$ = "Mappy -"
    case 4: ' Firefox Kiosk
      ' pour Firefox:    (créer au préalable le profile UtilisateurKGF" avec l'URL "config=profiles"
      Options$ = " -P "+chr$(34)+"UtilisateurKGF"+chr$(34)+" -no-remote"
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "firefoxkiosk"
      NomBrowser$ = "Mappy -"
    case 5: ' Pale Moon
      Options$ = ""   
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "palemoon"
      NomBrowser$ = "Mappy -"
    case 6: ' Pale Moon Kiosk
      Options$ = ""   
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "palemoonkiosk"
      NomBrowser$ = "Mappy -"
    case 7: ' Chrome
      Options$ = "-incognito --new-window"
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "chrome"
      NomBrowser$ = "Mappy -"
    case 8: ' Chrome Kiosk
      Options$ = "-incognito --new-window"
      url$ = "https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      Browser$ = "chromekiosk"
      NomBrowser$ = "Mappy -"
    case 9: ' Edge
      message "Désolé - Edge n'est pas utilisable ici !"
      return
      Options$ = ""
      url$ = ""
      Browser$ = "microsoft-edge:https://fr.mappy.com/#/0/M2/THome/N151.12061,6.11309,2.3527,48.8543/Z11/"
      NomBrowser$ = "MicrosoftEdge"
  end_select
  ID% = dll_call5("BrowserCreate",handle(1),adr(Browser$),adr(NomBrowser$),adr(Options$),adr(url$))
  return
 
arreter:
  ID% = dll_call1("BrowserDelete",ID%)
  return
 
end
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 16:17

Bonjour klaus,

Le principe est très intéressant. Wink

Mais y aurait il moyen de savoir quel explorateur est installé sur le système ?
Comme cela une détection auto serait possible.

qu'en penses tu ?
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 16:21

Je vais voir si j'arrive à détecter les browsers...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 17:29

Oui, j'ai fait la fonction. Je la publierai aujourd'hui. Ca marche très bien !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 17:37

Super ! cheers

J'entrevois déjà une utilisation possible.
J'attends la suite... bounce
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 18:45

Nouvelle version:
KGF.dll V8.99 du 30/06/2019

Nouveautés:
- nouvelle fonction: GetInstalledBrowsers

Modules modifiés:
KGF.dll
KGF.chm


La doc et les sources sont à jour.

La démo:
Code:
' test_GetInstalledBrowsers.bas

dim res%, s$

alpha 1 : top 1,10 : left 1,10
alpha 2 : top 2,40 : left 2,10 : caption 2,"Navigateurs installés:"
memo  3 : top 3,40 : left 3,10 : width 3,200 :height 3,200 : bar_both 3

dll_on "KGF.dll"

s$ = string$(50," ")
res% = dll_call2("GetInstalledBrowsers",adr(s$),handle(3))
caption 1,"Navigateur par défaut: "+trim$(s$)

end
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Minibug

Minibug


Nombre de messages : 4566
Age : 57
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 30 Juin 2019 - 19:06

Génial !

Je viens de tester et ça fonctionne super bien !
Merci Klaus. Je vais essayer d'aller plus loin avec tout ça... Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Yannick




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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: re   KGF_dll - nouvelles versions - Page 31 EmptyDim 7 Juil 2019 - 0:49

Allo !... Houston on a un problème !... Embarassed

FolderSelect ne répond plus.
la fonction ne renvoie plus le nom du dossier mais seulement C.

Code:
SUB DIRSEARCH()
  dim_local res%
  racine$="C:\"
  dest$=string$(255," ")
  res% = DLL_call4("FolderSelect",adr(racine$),adr(dest$),len(dest$),1)
  if res%=1
      message dest$
      dest$=trim$(dest$)
      message dest$
  else
      message "raté !"
  end_if   
END_SUB
Revenir en haut Aller en bas
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 7 Juil 2019 - 11:10

Nouvelle version:
KGF.dll V9.00 du 07/07/2019

Nouveautés:
- FolderSelect: réécriture complète de la fonction

Modules modifiés:
KGF.dll

La doc et les sources sont inchangées.

Ceci devrait résoudre le problème de Yannick...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
papydall

papydall


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 7 Juil 2019 - 12:33

Bonjour Klaus.
J’essaie d’utiliser BrowserCreate et compagnie pour une petite application que je suis en train de créer.
Je rencontre quelques difficultés.
Par exemple : j’ai une série d’URL que je veux tester au choix.
Je détermine mon navigateur par défaut et je l’initialise (option$,browser$,Nombrowser$)
Je choisis, disons l’URL xxx et je crée mon browser par
Code:

ID% = dll_call5("BrowserCreate",handle(1),adr(Browser$),adr(NomBrowser$),adr(Options$),adr(url$))

Jusque là, tout va bien.
Je ferme la page de l’URL que je viens de consulter pour retourner à mon programme afin de choisir une autre URL dans ma série d’URL, disons l’URL yyy et là rien ne va plus : pas possible de lancer la nouvelle URL.
Surement à cause du browser crée et qui est toujours  actif (en arrière plan ?).
J’ajoute dans mon code une variable (flag) encours que j’initialise à 1 si le browser est actif (crée) et à 0 sinon.
Avant de demander une création d’un nouveau browser, je teste le flag encours s’il est à 1 je le détruis par BrowserDelete avant de le récréer à nouveau, mais ça n’a pas marché.

Peut-être que dans la soirée, je posterai un code pour montrer de quoi je parle.

REMARQUE
A propos de la doc, les % (à part celui de dest%) sont à remplacer par des dollars $

Spoiler:
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Klaus

Klaus


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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 EmptyDim 7 Juil 2019 - 13:20

Je vais regarder cela...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Yannick




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

KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re   KGF_dll - nouvelles versions - Page 31 EmptyDim 7 Juil 2019 - 22:29

Merci Klaus, FolderSelect répond à nouveau.
Laughing
Revenir en haut Aller en bas
Contenu sponsorisé





KGF_dll - nouvelles versions - Page 31 Empty
MessageSujet: Re: KGF_dll - nouvelles versions   KGF_dll - nouvelles versions - Page 31 Empty

Revenir en haut Aller en bas
 
KGF_dll - nouvelles versions
Revenir en haut 
Page 31 sur 40Aller à la page : Précédent  1 ... 17 ... 30, 31, 32 ... 35 ... 40  Suivant
 Sujets similaires
-
» KGF_dll - nouvelles versions
» Nouvelles versions
» KGF_dll - nouvelles versions
» Synedit_Editor - nouvelles versions
» KGF_dll - nouvelles versions

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: