IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Comment comparer deux codes sources de versions différentes dans l'EDI ?


Sujet :

VB 6 et antérieur

  1. #1
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut Comment comparer deux codes sources de versions différentes dans l'EDI ?
    Bonsoir,

    J'ai un bug qui est apparu dans une release 195 que j'ai faite. en clair lors des tests en débogage sous EDI, VB6 recherche les fichiers sur "c:\Program Files\Microsoft Visual Basic\Vb98" le répertoir par défaut de Vb6 et non sur le répertoire choisi dans "Récent" : "H:\sbwin" au moment du chargement. Or la version 186 fonctionne parfaitement mais à d'autres bugs solutionnés entre temps.

    Donc mon idée est de comparer le code de deux versions avec mes deux écrans.

    Mais il y a 11000 lignes de codes.... donc pas question de comparer ce qui est identique !

    Comment procéderiez-vous?

    En vous remerciant pour vos idées.

    A vous lire
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  2. #2
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    Bonjour,
    Il faut évidemment automatiser la tache - même en multi-écran la tache devient vite galère avec des projets conséquents.

    1/ Identifier les modules identiques
    2/ Identifier les modules présents dans l'un des projets et absent dans l'autre
    3/ Identifier les lignes différentes des modules différents.
    La comparaison peut s'effectuer très facilement par une signature (MD5, CRC32)

    Il y a 3 approches :
    - avec VB en réalisant soi-même l'outil

    • en utilisant la librairie «Microsoft Visual Basic 6.0 Extensibility» qui permet de traiter les projets et ses modules en tant qu'objects
      mais cela suppose de générer un projet de type Addin, ou
    • en travaillant directement sur les fichiers des projets mais cela suppose une connaissance minimale de l'architecture des projets VB

    - avec un comparateur de fichiers.

  3. #3
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Bonsoir,

    Merci pour ta réponse. J'ai chargé le logiciel Diff'doc. Ce comparateur de fichier est une petite merveille bien huilé et très conviviale grâce à ses codes de couleur bleu et rouge suivant qui on compare. Les options forts nombreuse permettent de faire des recherches poussé.

    Pour revenir à mon problème je pense après analyse des fichiers qu'ils ne sont pas en cause. Soit c'est un bug dans VB6 sp6 ou MZtools, soit un paramétrage windows est différent pour un de mes disques (F: ) !

    Explication :

    1/ Mon application en développement sous VB6 peut tourner sur n'importe quel disque dur à conditions que les fichiers ad'hoc y soit installer.
    2/ En installant la même appli sur tous mes disques de C: à I: (sauf F: ) tout fonctionne nickel.
    3/ En installant la même appli sur F: cela démarre mal en m’annonçant des fichiers introuvables or qu'ils y sont. Après vérification des routes, des disques,... tout est ok !

    Un peu comme si tous les fichiers de l'appli n'étaient pas présents sur F:

    J'ai le même phénomène avec mon disque virtuel K: Mais bon peu de gens ont un disque virtuel donc j'oublie ce problème.

    Par contre, bonne nouvelle le fichier .exe fonctionne sur tous les disques et c'est bien l'essentiel.

    Si vous avez une idée car cette énigme me laisse perplexe !

    a vous lire
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  4. #4
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    Citation Envoyé par excalybur Voir le message
    Bonsoir,

    Merci pour ta réponse. J'ai chargé le logiciel Diff'doc. Ce comparateur de fichier est une petite merveille bien huilé et très conviviale grâce à ses codes de couleur bleu et rouge suivant qui on compare. Les options forts nombreuse permettent de faire des recherches poussé.

    Pour revenir à mon problème je pense après analyse des fichiers qu'ils ne sont pas en cause. Soit c'est un bug dans VB6 sp6 ou MZtools, soit un paramétrage windows est différent pour un de mes disque (F: ) !

    Explication :

    1/ Mon application en développement sous VB6 peut tourner sur n'importe quel disque dur à conditions que les fichiers ad'hoc y soit installer.
    2/ En installant la même appli sur tous mes disques de C: à I: (sauf F: ) tout fonctionne nickel.
    3/ En installant la même appli sur F: cela démarre mal en m’annonçant des fichiers introuvables or qu'ils y sont. Après vérification des routes, des disques,... tout est ok !

    Un peu comme si tous les fichiers de l'appli n'étaient pas présents sur F:

    J'ai le même phénomène avec mon disque virtuel K: Mais bon peu de gens ont un disque virtuel donc j'oublie ce problème.

    Par contre, bonne nouvelle le fichier .exe fonctionne sur tous les disques et c'est bien l'essentiel.

    Si vous avez une idée car cette énigme me laisse perplexe !

    a vous lire
    Ben vu le contexte, ça concerne plus les arts divinatoires

  5. #5
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Bonjour

    Excellent !!!!!!!

    Plus sérieusement je pense que mon Vb6 est instable ! En effet si je compile les appli en EXE tout fonctionne nickel ! Par contre les erreurs affichées lors des tests changent au grès des jours. Maintenant en mode run (F5) il m'informe qu'un font est en erreur de compilation. Méthode ou membre de données introuvable !" Si je compile en EXE le programme fonctionne sans bug!
    J'ai 4go installé dont 2,5 de libre.

    VB6 doit gérer 11000 lignes de codes. Est-il à la limite de ses capacités ? Ne connaissant pas ses limites je ne peut pas juger.

    Je vais installer VB sp6 sur un autre PC et faire des tests pour vérifier si l'installation de mon vb6 par en vrille !

    A+
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  6. #6
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    Citation Envoyé par excalybur Voir le message
    Bonjour

    Excellent !!!!!!!

    Plus sérieusement je pense que mon Vb6 est instable ! En effet si je compile les appli en EXE tout fonctionne nickel ! Par contre le erreurs affichés lors des tests changent au grès des jours. Maintenant en mode run (F5) il m'informe qu'un font est en erreur de compilation. Méthode ou membre de données introuvable !" Si je compile en EXE le programme fonctionne sans bug!
    J'ai 4go installé dont 2,5 de libre.

    VB6 doit gérer 11000 lignes de codes. Est-il à la limite de ses capacités ? Ne connaissant pas ses limites je ne peut pas juger.

    Je vais installer VB sp6 sur un autre PC et faire des tests pour vérifier si l'installation de mon vb6 par en vrille !

    A+
    11000 lignes c'est peanuts
    Il n'est pas rare que comme toi certains accusent vb dès qu'il y un problème et à chaque fois, après coup, c'est encore et toujours le dev
    VB est essentiellement limité en nombres de controles (voir la MSDN sur les limitations) et quasiment jamais l'utilisation mémoire.
    Tu as un tuto sur le débogage. Sers-t-en.

  7. #7
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Mystère divinatoire élucidé !

    En repassant à la moulinette de bloc notes ! le fichier .vbp j'ai découvert un intrus dans les lignes de commandes : au lieu de lire Form=sbwin2.frm il était écrit Form=f:\sbwin\sbwin2.frm .... Ca a suffit pour mettre la panique. Par contre je ne sait pas comment cette ligne s'est modifié ainsi ! Tout fonctionne à nouveau c'est l'essentiel. Pourtant le débugage n'a rien vu comme quoi le croisement de différents systèmes de contrôle a du bon.

    Mon analyse des causes me fait pointer du doigt la défaillance de l'enregistrement de mes versions releases.

    Constat : Le système enregistrer sous de vb6 n'incrémente pas les archives.

    Donc par les fautes d'inattentions lors de mes sauvegardes je me retrouve avec des trous entre releases 186 et 195 par exemple; il manque par exemple 187; 191; 193.
    Ma méthode manuel n'est donc pas bonne. il faut l'automatiser.

    Je ne trouve pas de topos en VB6 sur le sujet mais peut être que j'utilise pas les bons mots clefs?

    Ou existe-t'il un module à télécharger dans vb6 ? Le net ne me donne rien.

    A vous lire
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  8. #8
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Je viens de trouver archiver 6.0 pour vb6 en opensources.

    http://freesourcecode.net/vbprojects...n-Visual-Basic

    Le produit est performant et permet d'incrémenter manuellement les archives en rappelant le précédent numéro. Il y a quelques lignes à améliorer pour sélectionner tous les 60 fichiers avec un CTRL A et non shift + mouse scroll. Des bricoles en sommes.

    Reste à l'incorporer à la plateforme VB 6 pour le fun !
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  9. #9
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    Personnellement je gère à mano une copie des sources avec des projets construits en chemin relatif
    (ce qui permet de sauvegarder avec un simple copier coller)
    mais il existe un utilitaire de gestions des versions 'SourceSafe' (que je n'ai jamais utilisé)
    qui semble répondre à vos besoins (voir la MSDN)

  10. #10
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Merci pour ta réponse, je vais chercher sur la MSDN.

    A+
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  11. #11
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Bonjour

    J'ai un problème ! J'ai bien la doc de Visual SourceSafe mais ma version de Vb6 est la pro et non l'entreprise. Conséquence pas de logiciel Visual SourceSafe disponible.

    Comment puis-je faire?

    A vous lire
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  12. #12
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    L'alternative à l'absence de Source Safe :
    tu te fais un addin dédié à l'ide vb6 et tu interceptes l'évènement RequestWriteFile de FileControlEvents dans le module de code Connect.
    A partir de là, tu gères tes sauvegardes en utilisant par exemple la version du projet ou la date etc.
    Rien de bien sorcier à faire

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 40
    Points : 63
    Points
    63
    Par défaut
    Et svn ou git pour gérer vos sources non?

    Pourquoi se prendre la tête avec un vieux truc comme sourcesafe ou encore un bazar développé au pif par un mec ?

    Parfois j'ai du mal a vous suivre, coder en vb6 ne veut pas forcément dire utiliser tous les outils qui sont fournis avec .
    Bros

  14. #14
    Rédacteur
    Avatar de DarkVader
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 130
    Points : 3 118
    Points
    3 118
    Par défaut
    Citation Envoyé par Bros Voir le message
    Et svn ou git pour gérer vos sources non?

    Pourquoi se prendre la tête avec un vieux truc comme sourcesafe ou encore un bazar développé au pif par un mec ?

    Parfois j'ai du mal a vous suivre, coder en vb6 ne veut pas forcément dire utiliser tous les outils qui sont fournis avec .
    Tout à fait mais la réponse, qui vaut ce qu'elle vaut, est 'Peut-être pour faire au plus simple avec ce qu'on a sous la main'

  15. #15
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Citation Envoyé par DarkVader Voir le message
    L'alternative à l'absence de Source Safe :
    tu te fais un addin dédié à l'ide vb6 et tu interceptes l'évènement RequestWriteFile de FileControlEvents dans le module de code Connect.
    A partir de là, tu gères tes sauvegardes en utilisant par exemple la version du projet ou la date etc.
    Rien de bien sorcier à faire

    Je n'ai jamais fait d'addin dédié à l'ide vb6. Faut bien commencer un jour !

    Aurait-tu un lien exemple stp ?
    La Connaissance est comme le rire elle est contagieuse en la partageant!

  16. #16
    Membre habitué Avatar de excalybur
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Novembre 2014
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2014
    Messages : 305
    Points : 181
    Points
    181
    Par défaut
    Citation Envoyé par Bros Voir le message
    Et svn ou git pour gérer vos sources non?

    Pourquoi se prendre la tête avec un vieux truc comme sourcesafe ou encore un bazar développé au pif par un mec ?

    Parfois j'ai du mal a vous suivre, coder en vb6 ne veut pas forcément dire utiliser tous les outils qui sont fournis avec .
    Bonsoir

    Merci pour vos précisions. Je présume selon ce que vous écrivez que svn et git sont issues d'un autre code puisque ça n'est pas du vb6 ?

    Pouvez-vous m'en dire plus ?

    A vous lire
    La Connaissance est comme le rire elle est contagieuse en la partageant!

Discussions similaires

  1. Réponses: 4
    Dernier message: 24/02/2006, 08h16
  2. Comment présenter un code source ?
    Par khayyam90 dans le forum Mise en forme
    Réponses: 2
    Dernier message: 11/11/2005, 07h27
  3. Comment comparer deux dates
    Par vodevil dans le forum Modules
    Réponses: 6
    Dernier message: 01/09/2005, 18h24
  4. comment comparer deux dates?
    Par billoum dans le forum C++Builder
    Réponses: 2
    Dernier message: 21/08/2004, 21h08
  5. [Juridique] Comment réutiliser le code source d'une classe ?
    Par mathieu dans le forum Général Java
    Réponses: 8
    Dernier message: 17/05/2004, 13h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo