Version avec 2.0 mineur majeur build..Comment ca marche

Résolu
devmax98799 Messages postés 76 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 12 août 2009 - 13 déc. 2005 à 14:05
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre 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

12 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
13 déc. 2005 à 18:36
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#
*/
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
13 déc. 2005 à 14:31
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#
*/
0
devmax98799 Messages postés 76 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 12 août 2009
13 déc. 2005 à 14:39
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
0
devmax98799 Messages postés 76 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 12 août 2009
13 déc. 2005 à 14:54
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
13 déc. 2005 à 14:55
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#
*/
0
devmax98799 Messages postés 76 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 12 août 2009
13 déc. 2005 à 16:31
je suis vraiement trop nul...
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
13 déc. 2005 à 17:29
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#
*/
0
devmax98799 Messages postés 76 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 12 août 2009
8 janv. 2006 à 14:15
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
0
cs_PegaseJM Messages postés 80 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 28 août 2006 2
26 juil. 2006 à 14:55
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
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
26 juil. 2006 à 15:27
Salut,
Il me semble que ce n'est que pour les applications deployées via ClickOnce, ca doit etre pour cela

Mx
MVP C# 
0
cs_PegaseJM Messages postés 80 Date d'inscription jeudi 22 juillet 2004 Statut Membre Dernière intervention 28 août 2006 2
26 juil. 2006 à 15:48
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
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
26 juil. 2006 à 15:50
Tu peux peut-etre tenter

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

Mx
MVP C# 
0
Rejoignez-nous