Bonjour à tous les amis de Developpez.com
Depuis toujours j'utilise la modification automatique des données en ligne de commande dans mes applications sans souci. Depuis quelques temps en voulant rendre "confidentiel" les fichiers avec l'adjonction d'un mot de passe j'obtiens aléatoirement des erreurs lors de la modif automatique.
D'après mes remarques dès qu'un fichier en clientèle qui n'avait pas de mot de passe se retrouve dans l'analyse avec : Problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 Erreur à la ligne 81 du traitement Initialisation de MonAppli. Vous avez appelé la fonction HCréationSiInexistant. La description du fichier logique <Demande> stockée dans l'analyse est différente de celle stockée dans le fichier physique <C:\Datas\KparK\Demande>. Impossible d'accéder au fichier. La taille de l'enregistrement du fichier <Demande> est différente de la taille décrite dans l'analyse : enregistrement de 127 octets dans le fichier et 128 octets dans l'analyse. Le nombre de rubriques du fichier <Demande> est différent du nombre de rubriques décrit dans l'analyse. Les valeurs par défaut de certaines rubriques du fichier <Demande> sont différentes de celles définies dans l'analyse. Le nombre de rubriques du fichier <Demande> est différent du nombre de rubriques décrit dans l'analyse. Informations techniques Projet : MonAppli Dump de l'erreur du module <WD120HF.DLL> <12.00Kg>. - Appel WL : Traitement de <>, ligne <81>, thread <0> Fonction <HCréationSiInexistant>, n° de syntaxe <1> - Niveau : erreur fatale (EL_FATAL) - Code erreur : 70016 - Code erreur WD55 : 16 - Pas de code d'erreur système - Pas de message d'erreur système - Que s'est-il passé ? La description du fichier logique <Demande> stockée dans l'analyse est différente de celle stockée dans le fichier physique <C:\Datas\KparK\Demande>. Impossible d'accéder au fichier. La taille de l'enregistrement du fichier <Demande> est différente de la taille décrite dans l'analyse : enregistrement de 127 octets dans le fichier et 128 octets dans l'analyse. Le nombre de rubriques du fichier <Demande> est différent du nombre de rubriques décrit dans l'analyse. Les valeurs par défaut de certaines rubriques du fichier <Demande> sont différentes de celles définies dans l'analyse. Le nombre de rubriques du fichier <Demande> est différent du nombre de rubriques décrit dans l'analyse. - Infos de debug : IEWDHF=32010 Module=<WDHF> Version=<12.00Kg> Fonction (7,28) - Infos attachées : EIT_LOGICALTABLENAME : <Demande> EIT_PATHFIC : <C:\Datas\KparK\Demande> EIT_PATHWDD : <D:\Mes Projets WD12\MonAppli\MonAppli.wdd> EIT_PILEWL : Initialisation de MonAppli(), ligne 81 EIT_COMPOSANT : EIT_DATEHEURE : 25/02/2010 18:04:35 - Identifiant dans le .err : 72109 Assistance Le fichier et la description de ce fichier dans l'analyse utilisée par l'application doivent être identiques. Il faut : - soit mettre à jour l'analyse utilisée par l'application si cette analyse est trop ancienne par rapport à la version du fichier de données. L'analyse de l'application est généralement incluse dans l'exécutable. Pour la mettre à jour, il suffit de recréer l'exécutable et de re-installer l'application. - soit mettre à jour le fichier de données par rapport à l'analyse. Une synchronisation peut être lancée depuis léditeur danalyses par loption « Structure de fichiers .. Mettre à jour les fichiers de données Hyper File ». La modification automatique du fichier peut également être réalisée lors de linstallation de l'application. Il suffit de cocher l'option « Permettre la modification automatique des fichiers de données » lors de la création de la procédure d'installation.
La solution provisoire que j'utilise est d'ajouter " -wizard " au code initialisation du projet ci dessous:
En ce moment j'ai la fenetre de PCSoft et la modif en interactif, je change le mot de passe et tout fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 gsRepApplic est une chaîne =fRepEnCours()+"\Outils\WDModfic.EXE" gsRepAnalyse est une chaîne=""""+fRepEnCours()+"\Outils\MonAppli.wdd"+"""" gsRepdonnee est une chaîne=""""+RepDon+"""" // repDon est une variable recuperant le chemin des données HPasse("*","monpass") QUAND EXCEPTION DANS HCréationSiInexistant("*") FAIRE SI ExceptionInfo(errCode) = 70016 ALORS LanceAppli(gsRepApplic+" -error -wizard -nobackup /WDD="+gsRepAnalyse+" /PWD=apap"+" /DIR="+gsRepdonnee, exeActif, Vrai) FIN FIN HCréationSiInexistant("*")
L'inconvenient est que je ne vais pas filer le mot de passe des fichiers à tous mes clients?
Je suis d'autant plus inquiet par ce que je viens de découvrir dans l'aide de WDModif.EXE :
N'y a t-il aucun moyen ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 /FILEPWD=<MotPasseFichier> Chaîne de caractères contenant le mot de passe du fichier de données spécifié (mot de passe défini soit à l'aide des fonctions HPasse, HCréation ou HCréationSiInexistant, soit lors d'une précédente modification automatique des données). Ce paramètre doit être précisé uniquement si le fichier de données spécifié est protégé par un mot de passe. Remarque : La modification du mot de passe d'un fichier de données est possible uniquement en mode interactif.
Merci d'avance à ceux qui se pencheront sur le problème!
Bon DEV
Partager