Mengakses registry

Mengakses registry

VISUAL BASIC : Mengakses registry menggunakan My.Computer.Registry object dan Microsoft.Win32 Namespace


Bagaimana cara membuat, membaca, menhapus registry dengan bahasa Visual Basic?
Pada tutorial Visual Basic ini, kita akan membahas cara writing, reading, deleting registry dengan menggunakan My.Computer.Registry object maupun Microsoft.Win32 Namespace.

A.  Membaca, membuat, menghapus registry dengan My.Computer.Registry Object.

Visual Basic menyediakan sebuah feature baru dalam pengembangan aplikasi kompleks untuk kemudahan. Feature tersebut adalah ‘My’ yang merupakan default object instance untuk aplikasi kita.
‘My’ terdiri dari :

My.Computer
My.Application
My.Forms
My.Log
My.lainlain hingga My.WebServices.

Semua My ini dapat anda lihat saat anda mengetikan ‘My’ pada Visual Studio, nanti intellisense akan men-display semua sub category dari ‘My’.

a.  Membuat SubKey dapat menggunakan kode berikut (cth buat MeTuPlus):

  1. My.Computer.Registry.CurrentUser.CreateSubKey("MeTuPlus")

b. Untuk delete SubKey dapat menggunakan kode berikut:

  1. My.Computer.Registry.CurrentUser.DeleteSubKey("MeTuPlus")

c.  Untuk mengeset StringValue dapat menggunakan kode berikut:

  1. My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MeTuPlus","MyStringValue","MediaTutorial")

“MediaTutorial” merupakan value/nilai dari StringValue “MyStringValue”.

d.  Untuk membaca StringValue kita dapat menggunakan kode berikut ini:

  1. Dim ehem = My.Computer.Registry.GetValue("HKEY_CURRENT_USER\MeTuPlus""MyStringValue",Nothing)

Nanti akan menghasilkan “MediaTutorial”. Nothing tersebut adalah default value yang kita berikan bila StringValue tidak ditemukan.

e.  Untuk menghapus / delete StringValue

  1. Dim subKey = My.Computer.Registry.CurrentUser.OpenSubKey("MeTuPlus "True)
  2. subKey.DeleteValue("MyStringValue")

kita tidak perlu mengetikan "HKEY_CURRENT_USER\MeTuPlus",karena sudah berada pada CurrentUser. Sehingga cukup hanya “MeTuPlus” saja.

Berikut merupakan source code bila kita menggunakan VisualBasic dan My.Computer.Registry.

  1. Public Class Form1
  2.     Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  3.         IfMy.Computer.Registry.GetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run""StartUpApp"Nothing) Is Nothing Then
  4.             MessageBox.Show("registry belum ada bro")
  5.             checkBoxStartUp.Checked = True
  6.         Else
  7.             checkBoxStartUp.Checked = False
  8.         End If
  9.     End Sub
  10.     Private Sub buttonSaveClose_Click(sender As Object, e As EventArgs) HandlesbuttonSaveClose.Click
  11.         If (checkBoxStartUp.Checked = True) Then
  12.             My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run""StartUpApp""[path dari aplikasi]")
  13.         Else
  14.             Dim subKey =My.Computer.Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Run"True)
  15.             subKey.DeleteValue("StartUpApp")
  16.         End If
  17.         Close()
  18.     End Sub
  19. End Class


B.  Membaca, membuat, menghapus registry dengan Microsoft.Win32 Namespace.

Kalo Microsoft.Win32 Namespace ini sama dengan tutorial pada C# membuat startup application diatas.

a.  Untuk membuat SubKey dapat menggunakan kode berikut:

  1. Microsoft.Win32.Registry.CurrentUser.CreateSubKey("MeTuPlus")

b.  Untuk delete SubKey dapat menggunakan kode berikut:

  1. Microsoft.Win32.Registry.CurrentUser.DeleteSubKey("MeTuPlus")

c.  Untuk mengeset StringValue dapat menggunakan kode berikut:

  1. Microsoft.Win32.Registry.SetValue("HKEY_CURRENT_USER\MeTuPlus","MyStringValue","MediaTutorial")

d.  Untuk membaca StringValue kita dapat menggunakan kode berikut ini:

  1. Dim ehem = Microsoft.Win32.Registry.GetValue("HKEY_CURRENT_USER\MeTuPlus","MyStringValue"Nothing)

f.  Untuk menghapus / delete StringValue

  1. Dim subKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("MeTuPlus "True)
  2. subKey.DeleteValue("MyStringValue")

My.Computer.Registry sama dengan Microsoft.Win32.Sehingga, dari code di atas tadi, anda tinggal menggantinya saja.

Berikut merupakan kode Visual Basic seperti pada tutorial C# membuat startup application.

Sumber : http://goo.gl/6FHwMM