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
» TourD Version 2
par Minibug Aujourd'hui à 1:50

» La métamatière et le peuple
par JL35 Hier à 21:18

» Capture d'une zone de l'écran total
par JL35 Hier à 18:41

» Logiciel de soutien scolaire en langues.
par Pedro Alvarez Hier à 11:49

» qui peut résoudre mon prb
par pascal10000 Jeu 16 Nov 2017 - 17:30

» évènements et objets système : listage automatique
par Jean Claude Jeu 16 Nov 2017 - 11:15

» Panoramic et la reconnaissance vocale.
par papydall Jeu 16 Nov 2017 - 3:45

» Bizzarerie dans Edge
par Marc 37 Mer 15 Nov 2017 - 17:45

» KGF_dll - nouvelles versions
par Klaus Mer 15 Nov 2017 - 2:08

» Analyser un code Panoramic
par JL35 Lun 13 Nov 2017 - 18:38

» Un bonjour en passant...
par Minibug Dim 12 Nov 2017 - 19:57

» mise a jour calculatrice
par joeeee2017 Dim 12 Nov 2017 - 4:20

» comment accèder à l'heure et à la date d'un fichier
par Klaus Sam 11 Nov 2017 - 0:53

» Compilateur FBPano
par Jicehel Mer 8 Nov 2017 - 15:22

» Mon adresse e-mail
par treehouse Mer 8 Nov 2017 - 14:36

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2017
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
27282930   
CalendrierCalendrier

Partagez | 
 

 Meilleur endroit pour localiser KGF.dll (et d'autres...)

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

avatar

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

MessageSujet: Meilleur endroit pour localiser KGF.dll (et d'autres...)   Lun 15 Juin 2015 - 19:30

Pour ne pas continuer à polluer le post de Jack concernant les 10 ans de Panoramic, je vais livrer ici, mes réflexions sur la localisation de Panoramic.dll.

Le plus simple est évidemment de placer KGF.dll dans le dossier où se trouve le source du programme (si exécuté par l'éditeur) ou le dossier où se trouve l'exécutable généré par l'Editeur. Dans ce cas, il suffit de faire
Code:
dll_on "KGF.dll"
et on accède à la DLL.

Bien entendu, ceci est inapplicable si l'on utilise plusieurs dossiers, un par projet par exemple. Dans ce cas, il faut trouver un lieu général, commun à tous les programmes, dans lequel on place KGF.dll (et d'autres...). Idéalement, cela devrait être un dossier à chemin court, facile à coder, comme par exemple:
Code:
dll_on "C:\outils\KGF.dll"

Mais il y a une troisième méthode, et je l'utilise dans mon outil Synedit_Editor, ainsi que dans pas mal de programmes que je code pour mon usage personnel. Il s'agit de paramétrer ce dossier sous forme d'une information dans un fichier INI ou CNF. Ce fichier contierndra, entre autres, une ligne du type:
Citation :
KGF.dll=C:\...\...\KGF.dll
Ce fichier est ouvert systématiquement au démarrage du programme application. Si ce fichier n'existe pas, il est créé, soit avec une valeur par défaut pour ce chemin, soit en ouvrant un sélecteur de dossier pour localiser le dossier. Ensuite, on lit ce fichier pour trouver l'information KGF.dll= et on utilise le chemin qui se trouve derrière. Evidemment, le fichier de configuration, normalement du même nom que le programme et avec l'extension INI, se trouve dans le même dossier que le programme. Voici une procédure qui gère cela d'une façon automatique:
Code:
dim KGF$

config()
message KGF$
dll_on KGF$

end

sub config()
  dim_local prog$, inifile$, dossier$, no%, f$, trouve%, s$


  prog$ = param_value$(0)
  inifile$ = file_extract_name$(prog$)
  inifile$ = left$(inifile$,len(inifile$)-3)+"ini"
  if file_exists(inifile$)=0
    no% = 1234
    while object_exists(no%)=1
      no% = no% + 1
    end_while
    save_dialog no%
    filter no%,"Fichiers DLL|*.dll"
    f$ = file_name$(no%)
    if f$="_"
      message "Impossible de déterminer de dossier pour KGF.dll !"
      terminate
    end_if
    dossier$ = file_extract_path$(f$)
    file_open_write 1,inifile$
    file_writeln 1,"KGF.dll="+dossier$+"KGF.dll"
    file_close 1
    delete no%
  end_if
  file_open_read 1,inifile$
  while file_eof(1)=0
    file_readln 1,s$
    if left$(s$,8)="KGF.dll="
      KGF$ = mid$(s$,9,len(s$))
      trouve% = 1
      exit_while
    end_if
  end_while
  file_close 1
  if trouve%=0
    message "Le chemin vers KGF.dll manque dans "+inifile$
    terminate
  end_if
  if file_exists(inifile$)=0
    message "Introuvable: "+inifile$
    terminate
  end_if
end_sub

Chacun peut l'adapter à son goût. Mais c'est la façon ultime de régler les problèmes de localisation. Rien n'empêche de placer d'autres chemins dans ce fichier, ou d'utiliser plusieurs fichier INI (un pour KGF.dll, on pour des ressources bitmap, ...). Donnez libre cours à votre créativité !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
papydall

avatar

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

MessageSujet: Re: Meilleur endroit pour localiser KGF.dll (et d'autres...)   Lun 15 Juin 2015 - 21:10

Pour moi le mieux est d'ajouter le chemin à la variable d’environnement PATH.
Et dans les programmes on fait simplement
Code:
 dll_on "kgf.dll"

Regarde ici
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
 
Meilleur endroit pour localiser KGF.dll (et d'autres...)
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

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: