I've been using CompareVersions() for some time now and never really noticed any problems. However, today I was comparing the last version of Adobe Flash, 10.1.183.7 to the current version which is 10.1.183.10. CompareVersions was returning that the .7 is newer than the .10 version. The reason is because of the 0 buffering. Since .10 has two places and .7 only has one, a zero is buffered to the right of .7 creating a value .70, which is higher in value, but incorrect. Checking CompareVerString() returns the same faulty value. I played around with this, but I really couldn't come up with a good working fix. Any ideas?

CompareVersions - http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=82864#Post82864
CompareVerString - http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=196541#Post196541

@Glenn, you might consider adding the following code to yours, so that it separates on commas too.

 Code:
  if instr($_Version1,",")
    $_Version1=Join(Split($_Version1,","),".")
  endif
  if instr($_Version2,",")
    $_Version2=Join(Split($_Version2,","),".")
  endif