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

C# Discussion :

Recuperer le numero de version du setup dans un programme C#


Sujet :

C#

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut Recuperer le numero de version du setup dans un programme C#
    Bonjour,

    Je developpe un programme en C# et je souhaiterais savoir s'il est possible de récupérer le numéro de version du setup qui a permis d'installer une application.

    Concretement, je génére un setup avec comme numéro de version 7.12.12.
    Lorsque j'installe le programme, dans Panneau de configuration, je vois le numero de version qui apparaît dans les infos du programme installe.

    Est-ce que je peux récupérer ce numéro directement dans l'application concerne?

    Cela me permettrait de faire un suivi des nouvelles versions en comparant celle executée avec la version actuelle.

    Merci d'avance.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Pourquoi ne pas comparer directement le numéro de version de l'application exécutée au numéro de la dernière version livrée ?

    C'est en général ce qui se fait.

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    Oui c'est ce que je voudrais faire mais mon probleme, c'est de recuperer le bon numero de version.

    En allant sur le forum, j'ai trouve ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Version vers = System.Deployment.CurrentDeployment.CurrentVersion;
    Mais, il ne trouve pas Deployment dans la classe System.

    Ou meme encore ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Windows.Forms.Application.ProductVersion
    La ça marche, mais le numéro de la version que je recupere n'est pas celui de mon setup que je peux voir dans la liste des programmes du panneau de configuration (7.12.11 dans mon cas).

    Voila, je sais pas de trop. Je suis un peu perdu avec tous ces numéros de version...

    Merci encore.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Il sert à rien le numéro de setup.

    Il faut se baser sur le numéro de l'application executée !

  5. #5
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    Ah d'accord et je peux le choisir le numero de l'application ou il s'incremente automatiquement?

    Ca doit être quelque part dans visual studio qu'on le change?

    Merci encore.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Je crois qu'il faut gérer manuellement le numéro de version principal et secondaire.

    Par contre, VS peut incrémenter automatiquement le numéro de build et de révision en modifiant dans ton Assembly.cs (en général) :

    [assembly:AssemblyVersion("x.y.*")]

    avec x la version principale et y la version secondaire.

  7. #7
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    D'accord mais est-ce que tu peux me dire ou je peux trouver l'assembly.cs.

    C'est un fichier de configuration de Visual Studio?

    Merci.

  8. #8
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    C'est un fichier normalement ajouté automatiquement par Visual Studio dans chaque projet. Dans VS 2005, il se trouve dans le répertoire Properties de la solution.

  9. #9
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    Moi j'utilise VS2003 et il est dans le repertoire Common/AssemblyInfo.cs.

    Donc si je change le numero de version dans ce fichier, il sera change dans mon programme.

    Mais moi, ce qui m'interesse ce serait que ce soit toujours du type annee.mois.jour pour le numero de version.

    Est ce que je peux faire cela de manière automatique ou est ce que je dois aller modifier manuellement à cahque fois le fichier?

    Merci

  10. #10
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Hum,

    Tu dois pouvoir créer une Macro VS qui te le fait avant génération.

  11. #11
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    J'ai essaye de modifier le fichier Assemblyinfo comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [assembly: AssemblyVersion("7.12.*")]
    J'ai ensuite tape dans visual cette ligne pour qu'il m'affiche le numéro de version :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MessageBox.Show("Numero de version actuel : "+System.Windows.Forms.Application.ProductVersion);
    Mais il continue a m'afficher l'ancien format de version en 1.0.*

    Voila. Je vois pas de trop pourquoi.

  12. #12
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Essaye Assembly.GetExecutingAssembly().GetName().Version.ToString()

  13. #13
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Il ne trouve pas Asssembly. Il se trouve a quel endroit?

  14. #14
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    using System.Reflection;

  15. #15
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Non, il me repond toujours un numero en 1.0.*

    On dirait qu'il ne prend pas en compte le fichier AssemblyInfo.cs

  16. #16
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Réunion

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 277
    Points : 1 521
    Points
    1 521
    Par défaut
    Y'a qu'un projet ?

  17. #17
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Non, c'est une solution avec plusieurs projets : IHM, Common, Setup, etc,...

    C'est peut etre cela. Je vais regarder.

  18. #18
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Oui, c'etait ca. Comme c'était le projet IHM qui s'executait en premier, il fallait que je modifie l'Assemblyinfo d'IHM.

    Maintenant la messageBox m'affiche un numero en 7.12.*

    Je tiens au courant de la suite.

    Merci encore pour l'aide.

  19. #19
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 36
    Points : 22
    Points
    22
    Par défaut
    Voila, j'arrive à récupérer le numéro de version avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String numero_version = System.Windows.Forms.Application.ProductVersion;
    Sinon, le quatrieme chiffre du numero de version ne semble pas se reinitialiser. Il continue tout le temps de s'incrementer. Y at-il un moyen de le reinitialiser ou faut il passer par une macro comme tu me l'as conseille tout a l'heure.

    Pour la macro, je vois pas de trop comment on fait cela avec Visual.

Discussions similaires

  1. detecter numero de version setup
    Par kazuzu dans le forum C#
    Réponses: 9
    Dernier message: 03/10/2013, 14h24
  2. [Exchange 2007] Script Powershell pour recuperer numero de Tel et coller dans champs custom
    Par fabrozor dans le forum Exchange Server
    Réponses: 0
    Dernier message: 25/10/2012, 16h39
  3. [MySQL] comment recuperer un numero de ligne dans un resultat
    Par lupus83 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 09/12/2009, 19h32
  4. Recuperation du numero de la ligne du select
    Par P'tit Jean dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 15/10/2007, 17h31
  5. Réponses: 2
    Dernier message: 19/05/2004, 10h13

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