Code:
  For Each $obj in $objects
$x = $obj.SetProductKey($VOL_PROD_KEY)
$ChangeVLKey = @error
Next
Exit 0



As I said though I'm sure the script as you have would probably run good on 99.9% of every run.

Personal opinion is that having the Exit 0 or @ERROR is just a bit better is all.