Frage

Die Versionsinformationen angezeigt, wenn der Mauszeiger schwebt über die Datei im Windows Explorer eine Datei von Visual Studio in der Version Ressource gebaut gesetzt. Ich mag die Version an einem Ort setzen für alle von einer Lösung vorzugsweise gebaut Dateien, wenn ich die Version in den Eigenschaften installieren ändern. Gibt es eine Möglichkeit, dies zu tun?

Die Motivation dafür ist, dass, wenn die Version nicht für eine Datei aktualisiert wird, dann wird der Installer frühere Versionen von Dateien verlassen, anstatt sie mit neuen Dateien zu ersetzen. Dies geschieht auch, wenn die Eigenschaft ‚RemovePreviousVersions‘ gesetzt. Um die mühsame und fehleranfällige Aufgabe der Aktualisierung der Version in jeder Datei erstellt und installiert zu speichern, entferne ich die Versionsressource von allen Dateien -., Die nicht elegant ist

War es hilfreich?

Lösung

Die zweite Antwort in Stack-Überlauf Thema Wie programmatisch ein Projekt ändern Produktversion? eine Lösung bietet für die Versionsnummer von einer gemeinsamen Header-Datei in C ++ Einstellung. Legen Sie einfach die Header-Datei, die hartcodierte Versionsnummern in einem Ordner enthält, wobei jedes Projekt finden kann.

Die obige Antwort beschreibt auch ein Mittel, um die Versionsnummer erhöht wird. Ein alternativer Ansatz für C ++ Version Inkrementieren ist von der Microsoft-Artikel verfügbar Wie Zuwachs Versionsinformationen nach jedem Build in Visual C ++ .

Alternativ können Sie Ihre Quellcodeverwaltungsrepository Revisionsnummer als Teil der Versionsnummer verwenden. Der Stack-Überlauf Artikel eine Datei mit Build-Nummer erstellen und Zweignamen in SVN gibt einen Einblick in diese für TortoiseSVN Nutzer. Die beiden folgenden Artikel dieses in mehr Tiefe erkunden:

die Integration der Subversion Revision in die Version automatisch mit .NET (C # oder VB)

Andere Tipps

Um zentralisieren Versionierung für eine Lösung:

  1. Nehmen Sie die Versionsinformationen aus AssemblyInfo.cs;
  2. Erstellen Sie eine neue Datei (GlobalAssemblyInfo.cs) und legen Sie Ihre Version Info darin (mit * VS erhalten eine neue Versionsnummer für jeden Build erstellen);
  3. Referenz GlobalAssemblyInfo.cs als Link: Hinzufügen | Vorhandenes Element Dropdown dann auf die Schaltfläche Hinzufügen in der Dateiauswahl hinzufügen als Link zu wählen statt;
  4. Wiederholen Sie für jedes Projekt in der Lösung;

Ich benutze einen Block, wie dies für die Version:

#if DEBUG

[assembly: Assembly ( "1.8.0.0")]

#else

[assembly: Assembly ( "1.8 *")]

#endif

Das hält VS von jeder Baugruppe während der Entwicklung wieder aufzubauen, sondern gibt jede Baugruppe eine neue Versionsnummer, wenn ich Release bauen.

scroll top