2010-07-11 5 views
5

Ich habe ein Deployment-Projekt für meine Anwendung eingerichtet. Das Problem ist, dass ich die Anwendungsversion (z. B. MyApplication 1.2.3.1) während der Installation anzeigen möchte, damit der Benutzer die Version vor der Installation sehen kann.Wie zeigt man die Anwendungsversion in VS.NET Deployment Project?

Die einzige Möglichkeit, die ich mir vorstellen kann, ist die WelcomeText im Begrüßungsdialog zu ändern. Gibt es einen leichteren oder eleganteren Weg, dies zu erreichen?

Antwort

6

Sie sollten in der Lage sein, die Windows Installer ProductVersion-Eigenschaft dafür zu verwenden. Wenn Sie das Dialogfeld Willkommen des Welcome Eigenschaft ändern:

The installer will guide you through the steps required to install [ProductName] [ProductVersion] on your computer. 

Dann können Sie das Deployment Project Version Eigenschaft ändern und automatisch angezeigte Wert. Jede auf einem String basierende Eigenschaft kann dies tun; Verwenden Sie einfach die [] -Syntax, um den Wert einzufügen.

Für andere Eigenschaften, die aus der Box zur Verfügung gestellt werden, finden Sie in den Windows Installer Property Reference

+0

Wo genau ist die '[ProductVersion]' Nummer eingestellt? Ich habe meine Anwendung 'AssemblyVersion' und' AssemblyFileVersion' Eigenschaften festgelegt und wenn ich meine App erstellen und überprüfen Sie die Details Registerkarte sagt mir die Version ist 1.1.0, aber wenn ich mein Installationsprogramm es zeigt 1.0.0 .... irgendwelche Ideen? – James

+0

Es ist in Ordnung, ich habe es gefunden, habe nicht bemerkt, dass der Installer selbst ist, wo ich die Version eingestellt habe, die ich dachte, dass sie es von der Anwendung abholte. – James

2

Sie können die Versionsnummer erhalten, die in den ausführenden AssemblyInfo.cs mit diesem Code

System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString() 

Ähnlich wird gesetzt, wenn Sie die Versionsnummer für eine bestimmte Anordnung erhalten möchten, können Sie

System.Reflection.Assembly.GetAssembly([type in my assembly]).GetName().Version.ToString() 
verwenden

Sie könnten dann den Begrüßungstext zur Laufzeit automatisch ändern.

+0

Vielen Dank für die Wiedergabe. Aber in Deployment Proejct - Benutzeroberfläche habe ich so etwas wie http://www.codeproject.com/KB/install/SetupAndDeployment/userInterfaceWindow1.JPG So sehe ich nicht die Möglichkeit, die Dialogfelder benutzerdefiniert zu ändern oder eine eingeben C# -Code. – Zefo

Verwandte Themen