Sia che tu stia parlando di VB6 che di VB.NET, il problema è stato già affrontato più volte: fai una ricerca nel forum.