2015-06-29 85 views
1

今天我嘗試了很多時間將AssemblyVersion和AssemblyFileVersion添加到我的Visual Basic exe文件中。如何將AssemblyVersion和AssemblyFileVersion添加到我的.exe

在我們的環境中,AssemblyVersion應該始終相同,如果有人做了一些更改,他會增加AssemblyFileVersion手冊。

的問題如下:

當我在項目中添加設置的組件的版本,我的.exe文件顯示兩個(ProductFileVersion和的ProductVersion)相同的版本號雖然AssemblyInfo.vb文件的細節具有AssemblyVersion和AssemblyFileVersion的正確條目。

當我在項目設置中另外添加文件版本號時,那麼exe文件中的兩個屬性都有AssemblyFileVersion編號。

我記得,我已經閱讀過這些東西,我想記住,第二個屬性(FileVersion)是強制的,但我不記得確切的。

有沒有人在那裏,誰可以幫助我在這件事?

因此,編譯後如何繼續在我的.exe細節中看到兩個版本號?

感謝您的幫助和最誠摯的問候!

+0

它在[本文](http://stackoverflow.com/a/23145471/17034)中詳細闡述。 –

回答

0

如果內存服務,VB.NET和C#都使用相同的模式並使用通配符來構建版本號。如果您在程序集/文件版本號中未提供通配符,則版本號將被固定(即,您必須手動更新它)。

因此,你應該做的是設置一個完整的版本號在AssemblyInfo.vb的文件,以防止它發生變化:

' This number will not increment. 
<Assembly: AssemblyVersion("1.0.0.9")> 

在另一方面,如果你想一個版本號每個構建遞增,通配符添加到最後一段:

' This number will auto increment 
<Assembly: AssemblyVersion("1.0.0.*")> 

有關詳細信息,請參閱MSDN上Managing Versions of an Application

編輯

您可能正在尋找AssemblyInformationalAttribute,這臺產品版本。這是一個字符串,不是一個整數值,所以你可以將它設置爲「1.0.9 RC1」。但是,如果你喜歡,你可以將它設置爲固定的版本號。有關更多信息,請參閱this excellent SO question

+0

嗨邁克,我已經在我的AssemblyInfo.vb完整版本號和AssemblyFileVersion完整版本號。這是我的測試條目: 但在命令執行後,兩個.exe屬性都有1.1.1.1。我不想自動增量。我們通過項目設置進行編輯來手動完成。 –

+0

@MarkMullen所以你有他們設置爲不同的版本,但他們只顯示爲項目屬性窗口中的FileVersionNumber?如果是這種情況,我會仔細檢查AssemblyInfo窗口中屬性的拼寫。 –

+0

@MarkMullen:嘿,我們交叉評論。 :)這很奇怪。他們看起來語法正確。你使用的是什麼版本的Visual Studio? –

相關問題