Password Generator in VB.NET

Submitted by: 
Visitors have accessed this post 2347 times.

In this article, we will create a program that can generate a random password when we pressed the button.

Now, let's start this tutorial!

1. Let's start with creating a Windows Form Application for this tutorial by following the following steps in Microsoft Visual Studio: Go to File, click New Project, and choose Windows Application.

2. Next, add only one Button named Button1 and labeled it as "Generate Password". Add also TextBox named TextBox1 for displaying the generated password. You must design your interface like this:


3. Declare these Global Variables:

  1. Dim pNum As New Random(100)
  2. Dim pLowerCase As New Random(500)
  3. Dim pUpperCase As New Random(50)
  4. Dim password As String
  5. Dim RandomSelect As New Random(50)

Variable pNum is used for number/numeric content of the password.
Variable pLowerCase is used for LowerCase character content of the password.
Variable pUpperCaseis used for UpperCase character content of the password.
Variable passwordis used for resetting the new password.
Variable RandomSelecis used for random selection of the password.

4. Create a Function named getPassword as String with parameters of passLength as Integer and Reset as Boolean.

  1. Public Function getPassword(ByVal passLength As Integer, Optional ByVal Reset As Boolean = False) As String
  2. Dim i As Integer
  3. Dim ctr(2) As Integer
  4. Dim charSelect(2) As String
  5. Dim iSel As Integer

clear old passwords:

  1. If Reset = True Then
  2. password = ""
  3. End If

create random numbers that will represent each upercase,lowercase,numbers:

  1. For i = 1 To passLength
  3. ctr(0) = pNum.Next(48, 57) 'Numbers 1 to 9
  4. ctr(1) = pLowerCase.Next(65, 90) ' Lowercase Characters
  5. ctr(2) = pUpperCase.Next(97, 122) ' Uppercase Characters
  6. 'put characters in strings
  7. charSelect(0) = System.Convert.ToChar(ctr(0)).ToString
  8. charSelect(1) = System.Convert.ToChar(ctr(1)).ToString
  9. charSelect(2) = System.Convert.ToChar(ctr(2)).ToString

pick one of the three above for a character At Random:

  1. iSel = RandomSelect.Next(0, 3)
  2. 'colect all characters generated through the loop
  3. password &= charSelect(iSel)

reset with new password:

  1. If Reset = True Then
  2. password.Replace(password, charSelect(iSel))
  3. End If
  5. Next
  6. Return password
  8. End Function

5. Insert this code in your Button1_Click so that the function two generate password will be used in the textbox.

  1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  2. TextBox1.Text = getPassword(8, True)
  3. End Sub

We used the getPassword function to display the 8 digit random characters in the textbox and when we press again the button it will reset the password and generate again as we declare that the Reset variable is set to True.



Download the source code below and try it! :)

For more inquiries just contact my number or e-mail below.

Best Regards,

Engr. Lyndon R. Bermoy
IT Instructor/System Developer/Android Developer
Mobile: 09488225971
Telephone: 826-9296
E-mail:[email protected]

Follow and add me in my Facebook Account:

Visit my page on Facebook at:

Add new comment

Filtered HTML

  • Web page addresses and e-mail addresses turn into links automatically.
  • You may insert videos with [video:URL]
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <table> <tr> <td> <th> <img> <h1> <h2> <h3> <iframe> [video]
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <asp>, <c>, <cpp>, <csharp>, <css>, <html4strict>, <java>, <javascript>, <mysql>, <php>, <python>, <sql>, <vb>, <vbnet>. The supported tag styles are: <foo>, [foo].
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.