Version avec 2.0 mineur majeur build..Comment ca marche [Résolu]

Messages postés
76
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
12 août 2009
- - Dernière réponse : MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
- 26 juil. 2006 à 15:50
Bonjour,
Je voulais savoir comment faire pour faire apparaitre le numero de version de mon intallation dans un label.

J'ai essayé ca
labelx.text = application.Producversion;

Mais c'est pas la version que je recherche.
Je recherche plutot la version qu'on retrouve lorsqu'on deplois l'application

//Major, build, minor, revision

J'ai remarqué qu'il y avait quelque chose qui pourrai etre ce que je recherche mais j'arrive pas a m'en servir car il initialise le compteur a 0

Version ver = new Version();

Je voudrai savoir comment attacher le "Version" a mon application

Merci

a 250 ? la xbox ca met la pression à la soudure
Afficher la suite 

12 réponses

Meilleure réponse
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
75
3
Merci
Bon, ça m'a sembler bizarre que rien ne soit prévu pour récupérer ce numéro de version, hors c'est justement prévu ^^

La version simple est donc :
Version vers = System.Deployment.Application.ApplicationDeployment.CurrentDeployment.CurrentVersion;

/*
coq
MVP Visual C#
*/

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 191 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_coq
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
75
0
Merci
Salut,

Tu peux récupérer les infos de version de l'assembly courant avec ce code :
Version vers = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq
Messages postés
76
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
12 août 2009
0
Merci
Ca revient a faire
Application.ProductVersion

C'est pas tout a fait ce que je cherche.
je recherche le numero de publication(publish version)

Si t'as al solution, ca serai bien sympas.
Merci

a 250 ? la xbox ca met la pression à la soudure
Commenter la réponse de devmax98799
Messages postés
76
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
12 août 2009
0
Merci
Bien j'ai cherché partout et je ne trouve pas. Je ne sais pas si c'est possible. Visiblement ce que je cherche vient avec ClickOne et je suis pas sure de pouvoir y accederde mon application hors de Visual Studio
Commenter la réponse de devmax98799
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
75
0
Merci
Les images locales ne sont pas uploadées sur le serveur, tu dois l'heberger avant et mettre son url sinon il n'y a que toi qui la voit.

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq
Messages postés
76
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
12 août 2009
0
Merci
je suis vraiement trop nul...
Commenter la réponse de devmax98799
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
75
0
Merci
Ok.
Bon en fait il existe bien une solution.
Ce fameux numéro de version est contenu dans le manifest d'application fournit avec l'executable.

Tu peux utiliser la classe (non documentée) AssemblyIdentity (Microsoft.Build.Tasks.dll)
Normalement cet assembly est installé avec le framework (je n'ai pas de config sans VS sous la main pour confirmer)
=>
string manifestFilePath = string.Concat(System.Reflection.Assembly.GetExecutingAssembly().Location, ".manifest");
Microsoft.Build.Tasks.Deployment.ManifestUtilities.AssemblyIdentity ident = Microsoft.Build.Tasks.Deployment.ManifestUtilities.AssemblyIdentity.FromManifest(manifestFilePath);
MessageBox.Show(ident.Version);

L'autre solution est de récupérer l'information directement dans le fichier manifest (xml)

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq
Messages postés
76
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
12 août 2009
0
Merci
Bon j'ai été long a repond mais j'ai j'etait pas devant le pc c'est dernier temps.
Merci Maitre Coq pour la solution. C'est exactement ca.
Le versionning devient beaucoup plus facile du coup avec cette methode.

Merci encore
Commenter la réponse de devmax98799
Messages postés
80
Date d'inscription
jeudi 22 juillet 2004
Statut
Membre
Dernière intervention
28 août 2006
1
0
Merci
Bonjour,

quand j'essai ca :

Version vers = System.Deployment.Application.ApplicationDeployment.CurrentDeployment.CurrentVersion;

J'ai un message d'erreur me disant "Application non installée"... Vous avez une idée ?

En fait, le Application.ProductVersion est très bien, mais il ne donne pas la révision...

JM
Commenter la réponse de cs_PegaseJM
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Salut,
Il me semble que ce n'est que pour les applications deployées via ClickOnce, ca doit etre pour cela

Mx
MVP C# 
Commenter la réponse de MorpionMx
Messages postés
80
Date d'inscription
jeudi 22 juillet 2004
Statut
Membre
Dernière intervention
28 août 2006
1
0
Merci
En effet... j'ai mis un try catch, pour éviter le plantage en mode debug...


Une fois l'application déployée, et executé sur l'ordi utilisateur, plus de plantage...


Merci
Commenter la réponse de cs_PegaseJM
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Tu peux peut-etre tenter

if (System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed)
   { ... }

Mx
MVP C# 
Commenter la réponse de MorpionMx