Visual Studio X programų versmiavimo (AssemblyVersion) numeriai

by admin on March 10, 2011

TL;DR:

  • [assembly: AssemblyVersion("1.0.D.S")]
  • D – dienų skaičius nuo 2000m Vasario 1′os.
  • S – sekundžių skaičius nuo vidurnakčio padalintas iš 2′jų.

Automatiškai versija pasikeis jei AssemblyVersion pakeisim taip:

[assembly: AssemblyVersion("1.0.*")]

 


 

Istorija:

Darbe darau  aplikaciją (exe) su VS2010.  Projektas pradėjo augti ir prisireikė automatiškai versijuoti failus.

Kolega Marius, sako prie AssembyInfo.cs pakeist šią eilutę:

[assembly: AssemblyVersion("1.0.0.0")]

į

[assembly: AssemblyVersion("1.0.0.*")]

Ok, pakeičiu versija sukas – 1.0.0.158952 ir pan.
Kitą dieną ryte dirbu toliau, testuoju, žiūriu į failo versiją – mažesnė! Galvoju kažką ne taip darau… Po kiek laiko bandau vėl – viskas ok, versija didesnė.

Dar vėliau prie to pačio exe dirbu vėl. Ir vėl versijos numeris mažesnis FTW? Pakeičiu rankom į didesnį, subildinu, dedu į servą, viskas kaip ir ok. Bet vis tiek WTF?

Šiandien ryte vėl tas pats. Pasireiškiau garsiai, visi kolegos kraipo galvom ir nežino kodėl taip vyksta.

Kol galiausiai Andrėjus gerai paieškojęs sako – “Paskutinis numeris, t.y. revizijos numeris yra laikas sekundėmis nuo vidurnakčio…”

Shit’kaip!

Tęsia toliau “..Buildo numeris yra dienų skaičius, nuo kažkurių metų…”

Na ok, kaip ir logiška.

Tiksliau būtų taip:

  • 1.0.D.S
  • D – dienų skaičius nuo 2000m Vasario 1os.
  • S – sekundžių skaičius nuo vidurnakčio padalintas iš 2jų.

Ir geriausia rezultatą pasiekti galima pakeitus AssemblyVersion į

[assembly: AssemblyVersion("1.0.*")]

Ir gaunam kažką panašaus į 1.0.4086.15908 tai ko ir reikia.

Src codeproject.

Leave your comment

Required.

Required. Not published.

If you have one.