PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV (earlier versions) → [WD15] Désactiver message "Le fichier des paramètres réseaux est introuvable" au lancement d'une appli
[WD15] Désactiver message "Le fichier des paramètres réseaux est introuvable" au lancement d'une appli
Started by Florent DURAIN, Mar., 22 2011 1:12 PM - 9 replies
Registered member
1 message
Posted on March, 22 2011 - 1:12 PM
Bonjour,
Nous souhaitons installer notre application en mode réseau avec version de référence sur serveur. Le souci est que nos utilisateurs peuvent utiliser notre logiciel en mode "déconnecté" sur leurs ordinateurs portables.
A chaque lancement de l'application, ils vont donc avoir le message suivant :
"Le fichier des paramètres réseaux est introuvable","Voulez-vous tout de même lancer l'application ?"

Après contact au support technique PCSoft, on m'a indiqué qu'il fallait effectuer une modification dans WDSetup pour faire en sorte de ne pas afficher ce message si la version de référence n'a pas été trouvée, mais sans préciser de quelle modification il s'agissait, ni où la faire.

Mon souci est que je ne trouve pas le code à modifier dans WDSetup pour y arriver.
Quelqu'un a t-il déjà eu ce besoin ?
Si oui, comment avez-vous réussi à le résoudre ?

Merci d'avance,

Florent.
Posted on March, 22 2011 - 1:08 PM
Florent DURAIN avait écrit le 22/03/2011 :
Bonjour,
Nous souhaitons installer notre application en mode réseau avec version de
référence sur serveur. Le souci est que nos utilisateurs peuvent utiliser
notre logiciel en mode "déconnecté" sur leurs ordinateurs portables. A chaque
lancement de l'application, ils vont donc avoir le message suivant : "Le
fichier des paramètres réseaux est introuvable","Voulez-vous tout de même
lancer l'application ?"

Après contact au support technique PCSoft, on m'a indiqué qu'il fallait
effectuer une modification dans WDSetup pour faire en sorte de ne pas
afficher ce message si la version de référence n'a pas été trouvée, mais sans
préciser de quelle modification il s'agissait, ni où la faire.

Mon souci est que je ne trouve pas le code à modifier dans WDSetup pour y
arriver. Quelqu'un a t-il déjà eu ce besoin ?
Si oui, comment avez-vous réussi à le résoudre ?

Merci d'avance,

Florent.


Bonjour,
j'ai rencontré ce problème, et je l'ai résolu en jouant sur la ligne de
commande paramétrée dans les raccourcis.

Dans le code du projet, j'ajoute le code suivant :

gcParam est une chaîne = LigneCommande()
SI Position(gcParam,"/RESEAU",1) > 0 ALORS
INIEcrit("Avowin_V10","RESEAU","1",fRepEnCours()+"\WDUPDATE.NET")
sinon
INIEcrit("Avowin_V10","RESEAU","0",fRepEnCours()+"\WDUPDATE.NET")
FIN


Cordialement
Posted on March, 22 2011 - 3:03 PM
Après mûre réflexion, Jacques Trepp a écrit :
Florent DURAIN avait écrit le 22/03/2011 :
Bonjour,
Nous souhaitons installer notre application en mode réseau avec version de
référence sur serveur. Le souci est que nos utilisateurs peuvent utiliser
notre logiciel en mode "déconnecté" sur leurs ordinateurs portables. A
chaque lancement de l'application, ils vont donc avoir le message suivant :
"Le fichier des paramètres réseaux est introuvable","Voulez-vous tout de
même lancer l'application ?"

Après contact au support technique PCSoft, on m'a indiqué qu'il fallait
effectuer une modification dans WDSetup pour faire en sorte de ne pas
afficher ce message si la version de référence n'a pas été trouvée, mais
sans préciser de quelle modification il s'agissait, ni où la faire.

Mon souci est que je ne trouve pas le code à modifier dans WDSetup pour y
arriver. Quelqu'un a t-il déjà eu ce besoin ?
Si oui, comment avez-vous réussi à le résoudre ?

Merci d'avance,

Florent.

Bonjour,
j'ai rencontré ce problème, et je l'ai résolu en jouant sur la ligne de
commande paramétrée dans les raccourcis.

Dans le code du projet, j'ajoute le code suivant :

gcParam est une chaîne = LigneCommande()
SI Position(gcParam,"/RESEAU",1) > 0 ALORS
INIEcrit("Avowin_V10","RESEAU","1",fRepEnCours()+"\WDUPDATE.NET")
sinon
INIEcrit("Avowin_V10","RESEAU","0",fRepEnCours()+"\WDUPDATE.NET")
FIN


Cordialement


Je précise que le fichier WDUPDATE.NET se comporte comme un fichier
..INI

Dans mon cas, la clé à modifier est :
[Avowin_V10]
RESEAU=1

Le nom de la clé est le nom de l'appli, bien sur. C'est parce que j'ai
fait un copier/coller que le nom de mon appli apparaît !

:)
Posted on March, 22 2011 - 3:41 PM
Merci pour l'astuce mais malheureusement ça ne va pas coller.

Nous n'utilisons qu'un seul raccourci pour lancer l'application et nous ne souhaitons pas en avoir un second.

Si le contrôle du réseau se faisait avant l'exécution du code du projet, cela nous aurait permis de feinter effectivement comme vous le faites, mais du coup ce n'est pas possible.
Posted on March, 22 2011 - 4:00 PM
Florent DURAIN vient de nous annoncer :
Merci pour l'astuce mais malheureusement ça ne va pas coller.

Nous n'utilisons qu'un seul raccourci pour lancer l'application et nous ne
souhaitons pas en avoir un second.

Si le contrôle du réseau se faisait avant l'exécution du code du projet, cela
nous aurait permis de feinter effectivement comme vous le faites, mais du
coup ce n'est pas possible.


Dommage... Une alternative serait de détecter si l'on est connecté au
réseau ou non, en conservant la même astuce, avec un seul raccourci.

par exemple : avec un ping du serveur.
SI Ping("192.168.1.38") ALORS
INIEcrit("NomAppli","RESEAU","1",fRepEnCours()+"\WDUPDATE.NET")
SINON
INIEcrit("NomAppli","RESEAU","0",fRepEnCours()+"\WDUPDATE.NET")
FIN

ça doit fonctionner.

Tenez-nous au courant.
cordialement
Posted on March, 22 2011 - 5:24 PM
Le souci est le même puisque tout code que l'on pose dans l'application est dans tous les cas appelé après la détection automatique de la version de référence.
Il faut donc obligatoirement modifier le WDSetup afin de dire qu'au moment de la détection de la version de référence, si celle-ci n'est pas trouvée, on n'affiche pas de message et on lance quand même l'application.
Le problème est ... quel est le code à modifier dans WDSetup pour faire cela ...
Posted on March, 22 2011 - 6:40 PM
Florent DURAIN a exprimé avec précision :
Le souci est le même puisque tout code que l'on pose dans l'application est
dans tous les cas appelé après la détection automatique de la version de
référence. Il faut donc obligatoirement modifier le WDSetup afin de dire
qu'au moment de la détection de la version de référence, si celle-ci n'est
pas trouvée, on n'affiche pas de message et on lance quand même
l'application. Le problème est ... quel est le code à modifier dans WDSetup
pour faire cela ...


Ben... je vous ai donné le code qui fonctionne très bien chez nous.
Il faut utiliser la commande IniEcrit .
Avez-vous essayé le code que vous ai envoyé ?

La solution pourrait-être un "Lanceur" qui execute le code que vous ai
donné, et qui lance l'application. Le raccourci pointerait directement
sur le lanceur.

Lanceur vérifie la connection au réseau :
si oui, on écrit 1 dans wdsetup.net
si non, on écrit 0 dans wdsetup.net
dans tous les cas, on lance l'application principale.

A part, ça, je ne vois pas de miracle en vue !
Posted on March, 22 2011 - 7:32 PM
En guise de test j'ai simplement mis un trace en première ligne du code du projet, et j'ai déconnecté mon réseau.
J'ai le message de version non trouvée sans avoir ma trace donc j'en ai déduis que le code du projet s'exécute après la vérification réseau et donc que la modification du fichier WDSETUP.NET ne peut pas être prise en compte en direct.
Je vais mettre votre code tout de même pour voir.
Posted on March, 23 2011 - 11:32 AM
Le 22/03/2011, Florent DURAIN a supposé :
En guise de test j'ai simplement mis un trace en première ligne du code du
projet, et j'ai déconnecté mon réseau. J'ai le message de version non trouvée
sans avoir ma trace donc j'en ai déduis que le code du projet s'exécute après
la vérification réseau et donc que la modification du fichier WDSETUP.NET ne
peut pas être prise en compte en direct. Je vais mettre votre code tout de
même pour voir.


D'où l'idée du lanceur : c'est lui qui effectue la modif dans
wdsetup.net, et qui lance votre appli. Dans ce cas, si le flag = 0, le
message n'apparaîtra pas.
Posted on June, 25 2018 - 2:47 PM
Bonjour, juste un bout de code car j'ai eu beaucoup de mal à régler le problème du message qui apparaît lorsque l'ordinateur n'est pas connecté au réseau.

//info("Chemin exe : " + ComplèteRep(fRepExe) + ProjetInfo(piNomEXE) + rc + "Mode reseau : " + AppliParamètre(appMAJRéseau,ComplèteRep(fRepExe) + ProjetInfo(piNomEXE)))
SI AppliParamètre(appMAJRéseau,ComplèteRep(fRepExe) + ProjetInfo(piNomEXE)) = 0 ALORS
// Modification pour changer le mode à 1
SI PAS AppliChangeParamètre(appMAJRéseau,"1",ComplèteRep(fRepExe) + ProjetInfo(piNomEXE)) ALORS
Erreur(ErreurInfo(errMessage))
FIN

// Vérifie l'existence d'une mise à jour
SI AppliMAJDisponible(ComplèteRep(fRepExe) + ProjetInfo(piNomEXE)) = appMAJDispoObligatoire ALORS
// Lancement de la mise à jour
SI PAS AppliDéclencheMAJ() ALORS
Erreur(ErreurInfo(errMessage))
FIN
FIN

FIN

// Désactivation du contrôle de mise à jour au lancement du logiciel
SI AppliParamètre(appMAJRéseau,ComplèteRep(fRepExe) + ProjetInfo(piNomEXE)) = 2 OU 1 ALORS
// Modification pour changer le mode à 0
SI PAS AppliChangeParamètre(appMAJRéseau,"0",ComplèteRep(fRepExe) + ProjetInfo(piNomEXE)) ALORS
Erreur(ErreurInfo(errMessage))
FIN
FIN


Explication :
A l'ouverture du logiciel, le logiciel vérifie si le fichier WDUPDATE.NET est en gestion local, si oui, il le modifie pour repasser en mode réseau "RESEAU=1", vérifie l'existance d'une mise à jour.
Si il y a une mise à jour, il l'a lance sinon il remodifie le fichier pour passer en mode local "RESEAU=0".