Andrew fiade pemrograman jaringan Page 1
BAB 3
SYSTEM AKSES WINDOWS
ISI HALAMAN INI
Pendahuluan ... 1
Deteksi CPU ... 2
Resolusi Layar ... 5
Cek sound ... 6
Cek alokasi memori ... 8
Mendapatkan user name ... 9
Proses yang berjalan ... 10
Waktu ... 12
PENDAHULUAN
Kita lanjutkan modul kali ini. Dalam isi materi dalam modul ini, kita akan mempelajari apa
yang dapat dilakukan oleh VB. NET untuk mendeteksi atau melakukan sebuah informasi dari
sistem informasi windows yang digunakan.
Pencapaian dalam modul ini digunakan untuk modul berikutnya yaitu remote komputer,
yang dapat dilakukan melalui protokol TCP dan UDP. Ketika program ini berjalan atau
berfungsi, maka dalam remote komputer, komputer program client mendapatkan informasi
informasi cpu, user name dan lainnya dari komputer program server.
Outline dalam modul ini yaitu:
Andrew fiade pemrograman jaringan Page 2 Resolusi Monitor, Mendapatkan Ukuran Resolusi monitor
Username Windows
Memori.
Sound.
Proses yang berjalan.
DETEKSI CPU
Kita langsung membuat program dalam hal ini tetap program yang akan digunakan adalah
VB. NET, Desain Program dapat dilihat pada gambar dibawah
Gambar 3. 1
Properti pada Form yang digunakan.
Button
Listbox
Label
Untuk Pengenalan Regedit di windows atau registri, dan pendeteksian CPU, yang sudah
dikenali oleh bahasa pemrograman VB.NET maka definisi tersebut dikenali melalui import.
Import yang digunakan adalah:
Imports System
Andrew fiade pemrograman jaringan Page 3 Imports System.Diagnostics
Imports System.Windows.Forms
Proses akan menampilkan saat user mengklik tombol dan program akan menampilkan di list
box. Maka klik button tersebut, sehingga tampilan seperti ini (tidak di tulis secara manual)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
End Sub
Informasi yang akan ditampilkan yaitu detail dari prosesor, nama prosesor, vendor dan identifier Prosesor.
Maka anda dapat mengetikan tampilan program disela antara button klik, lengkapnya
program tersebut dapat anda lihat pada kode program dibawah ini:
Kode program
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim m_LM As RegistryKey
Dim m_HW As RegistryKey
Dim m_Des As RegistryKey
Dim m_System As RegistryKey
Andrew fiade pemrograman jaringan Page 4
Dim m_Info As RegistryKey
m_LM = Registry.LocalMachine
m_HW = m_LM.OpenSubKey("HARDWARE")
m_Des = m_HW.OpenSubKey("DESCRIPTION")
m_System = m_Des.OpenSubKey("SYSTEM")
m_CPU = m_System.OpenSubKey("CentralProcessor")
m_Info = m_CPU.OpenSubKey("0")
ListBox1.Items.Add("Prosesor =" +
m_Info.GetValue("VendorIdentifier"))
ListBox1.Items.Add("Prosesor Name =" +
m_Info.GetValue("ProcessorNameString"))
ListBox1.Items.Add("Identifier = " + m_Info.GetValue("Identifier"))
ListBox1.Items.Add(m_Info.GetValue("~Mhz") & "MHz")
End Sub
End Class
Maka jika program anda benar dan anda jalankan, tampilan nama prosesor detail dengan
spesifikasi dari prosesor. Jika anda dapat lihat pada gambar terdapat tambahan button
Resolusi. Untuk melanjutkan program menampilkan resolusi layar.
Andrew fiade pemrograman jaringan Page 5 RESOLUSI LAYAR
Sudha disinggung sebelumnya, maka desain tampilan seperti pada gambar diatas, dan
menambahkan button resolusi. Dengan pengubahan properti
Button 1, dengan text = CPU
Button 2, dengan text =Resolusi
Untuk resolusi layar, maka diperlukan pengenalan oleh VB.Net untuk hal tersebut,
ditambahkan Imports System.Drawing.
Sama halnya dengan deteksi CPU, maka ketika user klik tombol resolusi akan ditampilkan ukuran resolusi layar.
Program lengkapnya
Kode Program Resolusi Layar
Imports System.Drawing
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
Dim bnds As Rectangle = My.Computer.Screen.Bounds
ListBox1.Items.Clear()
ListBox1.Items.Add("Resolusi Layar: " & bnds.Width & " by " &
bnds.Height)
End Sub
Anda dapat menambahkan button, misalkan button3 untuk mendapatkan versi dari aplikasi
kita, misalkan ada pertanyaan: kok tampilannya beda dengan yang diatas (Seharunya kan
Andrew fiade pemrograman jaringan Page 6 Gambar 3. 3 Tampilan Desain Versi
Dan penulisan kode dengan event, saat tombol versi diklik, lengkapnya
Kode Program Versi
Public Class Form1
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
With My.Application.Info.Version
ListBox1.Items.Add("Version " & .Major & _
"." & .Minor & " (Build " & .Build & "." & _ .Revision)
End With
End Sub
End Class
CEK SOUND
Untuk mengecek Sound dapat bekerja dengan baik atau tidak, sama kita tambahkan kembali
button dengan text =sound. Dan ditampilkan dilistbox. Dan tampilan ada ketika tombol
Andrew fiade pemrograman jaringan Page 7 Gambar 3. 4 Tampilan Desain Sound
Untuk definisi program, maka library yang kita tambahkan yaitu Imports System.Net.
dalam hal ini kita mendefinisikan sebuah prosedure play sound. Untuk mengenali hardware
sound.
Informasi penjalanan program saat button klik
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Silahkan melihat kode program lengkapnya
Kode Program Cek Sound
Imports System.Net
Public Class Form1
Private Declare Auto Function PlaySound Lib "winmm.dll" (ByVal
lpszSoundName As String, ByVal hModule As Integer, ByVal dwFlags As
Integer) As Integer
Const SND_FILENAME As Integer = &H20000
Const SND_ALIAS As Integer = &H10000
Const SND_SYNC As Integer = &H0
Andrew fiade pemrograman jaringan Page 8
"waveOutGetNumDevs" () As Int32
Declare Auto Function sndPlaySound Lib "WINMM.DLL" (ByVal FileName As
String, ByVal Options As Int32) As Int32
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim i As Integer
Andrew fiade pemrograman jaringan Page 9
Kode Program Cek Alokasi Memori
Imports System.IO
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim i As Integer
Sama halnya dengan alokasi memori, untuk mendapatkan username, kita tambahkan
beberapa perintah, yaitu definisi Imports System dan username disela program
contohnya dapat dilihat
Kode Program Dapatkan Username
Imports System
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Andrew fiade pemrograman jaringan Page 10
Else
ListBox1.Items.Add("cannot play wav file")
End If
End Sub
Contoh output dari program cek sound, alokasi memori dan username lihat digambar
dibawah ini:
Gambar 3. 5 Output Program
PROSES YANG BERJALAN
Dalam keseharian, saat menjalankan komputer, terkadang service yang aktif di windows
sering kali melakukan pemborosan memori ataupun pula ada service yang aneh dan tidak
seharusnya dijalankan. Dalam hal ini kita ingin melihat proses apa saja yang sedang aktif
saat komputer digunakan.
Tampilan desain menambahkan button dari project sebelumnya. Dan dibawah sudah hasil
Andrew fiade pemrograman jaringan Page 11 Gambar 3. 6 Tampilan Desain Proses
Untuk library ditambahkan Imports System.Threading. Program akan jalan ketika
tombol proses dijalankan dan ditampilkan di list box. Anda dapat mengetikan kode program
dibawah ini.
Kode Program Proses
Imports System.Threading
Dim ProcessList As System.Diagnostics.Process()
ProcessList = System.Diagnostics.Process.GetProcesses()
Dim Proc As System.Diagnostics.Process
ListBox1.Items.Clear()
For Each Proc In ProcessList
ListBox1.Items.Add(Proc.ProcessName)
Next
Andrew fiade pemrograman jaringan Page 12 WAKTU
Untuk mendapatkan waktu standar yang digunakan, apakah menggunakan regional Asia,
Eropa atau yang lainnya. Dengan tampilan form sama seperti sebelumnya, tambahan yang
dilakukan di program atau anda dapat membuat tambahan button sendiri dan menambah
program di button baru tersebut.
Program dapat dilihat di kode program
Kode Program Waktu
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button3.Click
Dim ProcessList As System.Diagnostics.Process()
Dim localAll As Process() = Process.GetProcesses()
ProcessList = System.Diagnostics.Process.GetProcesses()
Dim Proc As System.Diagnostics.Process
Andrew fiade pemrograman jaringan Page 13 Gambar 3. 7 Tampilan Desain Waktu
Untuk program dari cek sound, versi, alokasi memori, username , waktu dapat dilihat disini
Program lengkap
Private Declare Auto Function PlaySound Lib "winmm.dll" (ByVal
lpszSoundName As String, ByVal hModule As Integer, ByVal dwFlags As
Integer) As Integer
Const SND_FILENAME As Integer = &H20000
Const SND_ALIAS As Integer = &H10000
Const SND_SYNC As Integer = &H0
Declare Auto Function waveOutGetNumDevs Lib "winmm.dll" Alias
"waveOutGetNumDevs" () As Int32
Declare Auto Function sndPlaySound Lib "WINMM.DLL" (ByVal FileName As
String, ByVal Options As Int32) As Int32
System.EventArgs) Handles Button2.Click
Andrew fiade pemrograman jaringan Page 14
System.EventArgs) Handles Button1.Click
Dim i As Integer
System.EventArgs) Handles Button3.Click
Dim ProcessList As System.Diagnostics.Process()
Dim localAll As Process() = Process.GetProcesses()
ProcessList = System.Diagnostics.Process.GetProcesses()
Dim Proc As System.Diagnostics.Process
Modul Selanjutnya menggabungkan system windows dengan aplikasi TCP Server dan UDP
Server, diharapkan informasi dari sistem client atau server akan mengirimkan properti
hardware ke server atau client. Sehingga kita mendapatkan informasi penting dari salah