locked
VS.NET 2008: Rebuild --> Assemblyversion not incremented while asterisk (*) is used

    Question

  • Hello,

    My first post on the new msdn-boards, something new but looks good at first sight...

    But now my question:

    When I rebuild a VB.NET solution (class-lib, winforms) in VS.NET 2008 prof, the assembly-version isn't updated anymore.
    This i a project which i used to open in VS.NET 2005, but converted to VS.NET 2008 (no code changes, because is a ms.NET 2.0 project)

    I have the only following in my AssemblyInvo.vb 

    <Assembly: AssemblyVersion("2.0.*")>

    Before it worked in VS.NET 2005 (when I reopened Vs and rebuilded, the assembly-version info did changed).
    But now when i reopen the VS.NET 2008 solution, change something, rebuild --> the assembly-version info did NOT change. Even closing vs.NET 2008 an reopen, change, rebuild --> still no changes in the assembly-version...

    Why doesn't work this anymore (It still works in a C# project) ? My custom-auto-update solution uses the internal versions of the dll's, exe, .... So now, my update-functionality doesn't work anymore....

    Does anyone have this same problem, or does know a solution to it...

    Thx,
    Fred

    • Edited by Goethals Frederik Wednesday, June 18, 2008 2:23 PM Messed up the code-formatting
    Wednesday, June 18, 2008 2:19 PM

All replies

  • Hello,

    I still have not found a real solution to my problem. I did some testings and there 'could' be a problem with the zero-number in the version. Because when i change it to version "2.1.*", and do the following sequence of actions it works...

    *) change versions from: 2.0.* --> 2.1.*
    *) open solution
    *) clean solution
    *) close solution
    *) rebuild solution

    --> this was the only way I have found to auto-increment the version in VB.NET 2008. Even without cleaning the solution it wouldn't work... Very strange.

    Are the anyother people who have the same problems...


    Fred
    Monday, June 23, 2008 6:11 AM
  • Hi Fred,

    Please check this thread about: How to auto-increment assembly version in Visual Studio 2008?
    http://channel9.msdn.com/forums/TechOff/260670-VSnet-2008-Auto-Increment-BuildVersion-Numbers-how/
    "VS.net 2008 - Auto Increment Build-Version Numbers, How?"

    Edit AssemblyInfo.vb file as below:
    1) Comment out <Assembly: AssemblyFileVersion("1.0.0.0")>
    2) Replace <Assembly: AssemblyVersion("1.0.0.0")>  with <Assembly: AssemblyVersion("1.0.*")>
    3) Click 'Save'.


    Some references:
    http://weblogs.asp.net/bradleyb/archive/2005/12/02/432150.aspx
    How to auto-increment assembly version using a custom MSBuild task
    http://www.codeproject.com/KB/dotnet/Auto_Increment_Version.aspx
    Auto Increment Visual Studio 2005 version build and revision number on compile time


    In addition, note that: 
    Assembly Version and File Version are not auto-increased with Publish version, they are quite different concepts.
    Publish version is used in ClickOnce deployment for quick and per-user installation, and the client get to know a new version is released from the Publish version number.
    But Assembly Version is used with Strong Name, please read the follwoing documents:
    http://msdn2.microsoft.com/en-us/library/51ket42z(VS.80).aspx
    http://www.codeproject.com/dotnet/StrongNameExplained.asp
    As you can see, that if your assembly is related to Strong Name, auto-increased Assembly Version Number will cause some unexpected behaviors.

    TrackbacK: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1934574&SiteID=1
    Why don't the Assembly Version and File Version auto-increment with the Publish version?


    I hope that can help you.


    Best regards,
    Martin Xie
    Monday, June 23, 2008 7:13 AM
  • None of the proposed solutions work for me, except for possibly incrementing the version number. I have <Assembly: AssemblyVersion("5.0.*")>, which worked fine in VS 2005. I did not try 5.1 because it would affect our product release.This is a strong named VB assembly.

    I found that if I delete the obj and bin folders and do a rebuild all the version will be properly set.  If I do not clear thse folders I get the same version over again. Other users, strangely, do not have the problem when compiling the exact same source code.

    Sounds like a bug in there somewhere.

    Thanks,
    Larry
    • Proposed as answer by timcoder Friday, November 11, 2011 12:51 PM
    Tuesday, August 05, 2008 10:26 PM
  • I have the same problem.  I did not see issues in VS2003...we pretty much skipped VS2005 and went straight to VS2008.  I was already well familair with the AssemblyVersion("1.0.*") and the AssemblyVersionAttribute("1.0.*") seetings in the AssmblyInfo file for both C# and VB.NET.

    None of the proposed solutions have worked for me either; regardless if the assembly is signed or unsigned did not matter either.  Frankly, this looks like a bug to me in VS2008, but I find it pretty odd that this would be a bug...are we missng something here?  Is there some "stupid user trick" that is being overlooked?  I went through the IDE's Environment settings to see if some setting needed to be enabled as an added bonus search...as expected nothing was there.

    Thanks,

    -Jim Payne
    Friday, August 22, 2008 6:34 PM
  • Hello,

    I am having a similiar issue without even using the asterisk.  I am manually updating the AssemblyVersion file with the new numbers for both file and assembly.  After compiling, when viewing the properties of the dll, the file version is correct, but the assembly version is not.  As an above poster reported, it is required to delete all obj and bin files, then compile to get the correct assembly version number. 

    Any help would be greatly appreciated!

    Thanks!
    Danny

    Wednesday, August 27, 2008 11:32 AM
  • It would be nice if Microsoft actually cared about us. But Remember, VB programmers are 2nd class citizens. They wish we would all die I think. If 'c' does not have something, then We VB programmers can not have it either. Even if it has been part of basic for 40+ YEARS! And on the contrary, just because 'c' has something does not mean that we deserve it.
    Tuesday, September 02, 2008 6:20 PM
  • Hi All,

    Thank you for your valuable feedback and active participation in MSDN forums!

    You can post your feedback or suggestion to Microsoft Connect feedback portal in formal format. There Microsoft Engineers will repro/confirm it and give you a reply.

    http://connect.microsoft.com/VisualStudio/
    Visual Studio & .NET Framework
    Product Feedback Center


    Here are some similar feedbacks:

    Feedback: Assembly version build revision does not auto-increment without restarting IDE
    https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=108386&wa=wsignin1.0

    Feedback: Allow "*" for AssemblyFileVersionAttribute
    https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=93499

    Feedback: Assembly Information Dialog: Assembly Version and File Version does not accept 5.0.0.*
    https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=112573&wa=wsignin1.0

    Thank you again!

    Best regards,
    Martin Xie
    Wednesday, September 03, 2008 3:32 AM
  • Hi,

    I had the same problem. I was changing only the second number of the version and it did not reflec in the assembly version in Windows Explorer. What I did is I changed it completely - from 3.5.0.0 to 1.2.3.4, then rebuild and build. Then changed back to 3.5.0.0 and now it works. Hopefully, it will work for you too.

    Max
    Wednesday, October 29, 2008 5:09 PM
  • I think there is a problem if the AssenblyInfo.vb file is modified by another client. I've noticed the same problem when using Team Build to increment the build number, but manually editing the AssemblyInfo.vb file on my local computer fixes the problem.


    eloekset
    Thursday, September 24, 2009 6:11 PM
  • I've had this same problem.  I have a Visual Studio 2008 solution containing many VB.NET projects.  Most of these were converted from VS2005 projects.  When I rebuilt the solution, some of the assembly build numbers were incremented to the current value but some were not.  I tried restarting my machine, reopening VS2008, and rebuilding the solution.  This solved the problem for most of the projects.  However, there was still one project whose build number did not increment.  For that one project, I manually changed the Assembly version in the AssemblyInfo.vb file from "1.0.*" to "1.1.*" and rebuilt.  Then I changed the AssemblyVersion back to "1.0.*" and rebuilt again.  This finally fixed the problem.  However, it's quite a pain to do this, so I hope Microsoft could fix this bug.

     

    thanks,

    Nathan

    Thursday, June 02, 2011 8:37 PM
  • Guys, feel free to vote for https://connect.microsoft.com/VisualStudio/feedback/details/588047/assembly-version-build-revision-does-not-auto-increment-when-rebuilding-a-class-library-written-in-vb-net-in-visual-studio-2010#details

    It was accepted as bug and then fixed. Unfortunately, the fix was not included in VS2010 SP1, or at least it did not work for me.

    Friday, September 09, 2011 10:44 PM