private static Version GetVersion(IAssemblyName name)
{
uint majorOut;
uint minorOut;
name.GetVersion(out majorOut, out minorOut);
int major = (int)majorOut >> 16;
int minor = (int)majorOut & 0xFFFF;
int build = (int)minorOut >> 16;
int revision = (int)minorOut & 0xFFFF;
if(major < 0)
{
major = major * -1;
}
if(minor < 0)
{
minor = minor * -1;
}
if(build < 0)
{
build = build * -1;
}
if(revision < 0)
{
revision = revision * -1;
}
return new Version(major, minor, build, revision);
}