c# - version assembly vb net




Comment puis-je obtenir la version du fichier d'assemblage (4)

Il existe trois versions : assembly , fichier et produit . Ils sont utilisés par différentes fonctionnalités et prennent différentes valeurs par défaut si vous ne les spécifiez pas explicitement.

string assemblyVersion = Assembly.GetExecutingAssembly().GetName().Version.ToString(); 
string assemblyVersion = Assembly.LoadFile('your assembly file').GetName().Version.ToString(); 
string fileVersion = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion; 
string productVersion = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).ProductVersion;

Dans AssemblyInfo il existe deux versions d'assemblage:

  1. AssemblyVersion : spécifiez la version de l'assembly à attribuer.
  2. AssemblyFileVersion : demande à un compilateur d'utiliser un numéro de version spécifique pour la ressource de version de fichier Win32. La version du fichier Win32 n'est pas requise pour être le même que le numéro de version de l'assembly.

Je peux obtenir la Assembly Version avec la ligne de code suivante:

Version version = Assembly.GetEntryAssembly().GetName().Version;

Mais comment puis-je obtenir la Assembly File Version ?


Lorsque je veux accéder à la version du fichier de l'application (ce qui est défini dans Informations sur l'assemblage -> Version du fichier), disons de définir le texte d'une étiquette sur le formulaire de chargement pour afficher la version, je viens d'utiliser

versionlabel.Text = "Version " + Application.ProductVersion;

Utilisez ceci:

((AssemblyFileVersionAttribute)Attribute.GetCustomAttribute(
    Assembly.GetExecutingAssembly(), 
    typeof(AssemblyFileVersionAttribute), false)
).Version;

Ou ca:

new Version(System.Windows.Forms.Application.ProductVersion);

Voir mon commentaire ci-dessus demandant des éclaircissements sur ce que vous voulez vraiment. Espérons que c'est ça:

System.Reflection.Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly();
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(assembly.Location);
string version = fvi.FileVersion;




version