UNIVERSITAS GUNADARMA
PENULISAN ILMIAH
Diajukan Guna Melengkapi Sebagian Syarat Mencapai Jenjang D III/Setara Sarjana Muda
Jurusan Teknik Informatika Fakultas Teknologi Industri
Universitas Gunadarma 2010-2011
PEMBUATAN APLIKASI CARE REGISTRY MENGGUNAKAN J2SE
Nama : Hari Sulistio
NPM : 504 07 401
Fakultas : Teknologi Industri Jurusan : Teknik Informatika
Pembimbing : Deasy Indayanti, SKom., MMSI.
Properti
ii
PERNYATAAN ORIGINALITAS DAN PUBLIKASI
Saya yang bertanda tangan dibawah ini,
Nama : Hari Sulistio
NPM : 50407401
Judul PI : Pembuatan Aplikasi Care RegistryMenggunakan J2SE Tanggal Sidang : 17 Februari 2011
Tanggal Lulus : 17 Februari 2011
Menyatakan bahwa tulisan ini adalah merupakan hasil karya saya sendiri dan dapat dipublikasikan sepenuhnya oleh Universitas Gunadarma. Segala kutipan dalam bentuk apa pun telah mengikuti kaidah dan etika yang berlaku. Mengenai isi dan tulisan adalah merupakan tanggung jawab penulis, bukan Universitas Gunadarma.
Demikian pernyataan ini dibuat dengan sebenarnya dan dengan penuh kesadaran.
Jakarta, Januari 2011
(Hari Sulistio)
Properti
Hari
iii
LEMBAR PENGESAHAN
Judul PI : Pembuatan Aplikasi Care Registry Menggunakan J2SE
Nama : Hari Sulistio
NPM : 50407401
NIRM :
Tanggal Sidang : 17 Februari 2011 Tanggal Lulus : 17 Februari 2011
Menyetujui
Pembimbing
( Deasy Indayanti, SKom., MMSI. )
Koordinator PI
( Meilani B. Siregar, SKom., MMSI.)
Ketua Jurusan
( Dr. Ing. Adang Suhendra, SSi., SKom., MSc. )
Properti
Hari
iv
ABSTRACT
Hari Sulistio.50407401.
Pembuatan Aplikasi Care Registry Menggunakan J2SE
PI, Technic of Informatics, Faculty of Industrial Technology, Gunadarma University, 2011
Keyword : Registry, J2SE.
( xi + 40 pages + appendix )
In this scientific writing, the writer tries to make an Care Registry application using Java programming Language, NetBeans IDE 6.8 J2SE(Java 2 Standard Edition). This application containing some registry functions on rootkey HKEY_LOCAL_MACHINE(HKLM) and HKEY_CURRENT_USER(HKCU), including enable or disable functions by changing the value of an existing key in the registry of Windows operating system(Win OS).
The authors make this application in order to assist users in taking care of your computer registry with easy and simple. Easy because these application running on desktop computers and simple because this application is designed by using the checkboxes that have a clear description of the functions that can be selsected directly to set a registry value key that the user wants.
Bibliography (2007 – 2011)
Properti
Hari
v
KATA PENGANTAR
Assalamu’alaikum Wr.Wb.
Puji syukur penulis panjatkan kepada Allah SWT, yang telah memberikan rahmat dan hidayahnya sehingga penulis dapat menyelesaikan penulisan ilmiah yang diberi judul “Pembuatan Aplikasi Care Registry Menggunakan J2SE”.
Adapun penulisan ini diajukan untuk memenuhi sebagian syarat mencapai jenjang D III / setara Sarjana Muda pada Jurusan Teknik Informatika, Fakultas Teknik Industri, Universitas Gunadarma.
Dalam kesempatan ini perkenankanlah penulis menyampaikan penghargaan dan ucapan terima kasih yang sebesar-besarnya atas dorongan dan bantuan yang telah diteruma baik moril maupun materiil kepada :
1. Ibu Prof. Dr. E.S. Margianti, SE., MM., selaku Rektor Universitas Gunadarma.
2. Bapak Prof. Drs. Syahbuddin, MSc., Ph.D., selaku Dekan Fakultas Teknologi Industri.
3. Bapak Dr. Ing. Adang Suhendra, SSi., SKom., MSc., selaku Ketua Jurusan Teknik Informatika.
4. Ibu Meilani B. Siregar, SKom., MMSI., selaku Koordinator Penulisan Ilmiah Fakultas Teknologi Industri.
5. Ibu Deasy Indayanti, SKom., MMSI., selaku pembimbing penulis yang telah membimbing penulis dalam menyelesaikan penulisan ini.
6. Kedua Orang Tua yang telah memberikan dukungan dan doanya.
7. Keluaga besar kelas 4IA12 angkatam 2007 yang membantu, memberikan dukungan dan saran maupun masukkan serta ilmunya dalam penyelesaian penulisan ini.
8. Semua pihak yang telah membantu, memotivasi, dan memberikan dukungan hingga terselesaikannya penulisan ini yang tidak dapat disebutkan satu-persatu.
Properti
Hari
vi
Penulis juga ingin menyampaikan, bahwa penulisan ini masih jauh dari sempurna. Oleh karena itu, kritik, saran, dan masukan sangat penulis harapkan untuk perbaikan pada penulisan selanjutnya.
Pada akhirnya penulis berharap semoga penulisan ini bermanfaat bagi pembaca pada umumnya dan pecinta ilmu pengetahuan pada khususnya.
Wassalamu’alaikum Wr.Wb. Jakarta, Januari 2011 Penulis
Properti
Hari
vii
DAFTAR ISI
Halaman
HALAMAN JUDUL ………. i
LEMBAR ORIGINALITAS DAN PUBLIKASI ………. ii
LEMBAR PENGESAHAN ……….. iii
ABSTRACT …………...……….………. iv
KATA PENGANTAR ………... v
DAFTAR ISI ………. vii
DAFTAR TABEL ……….………….... ix DAFTAR GAMBAR ……… x DAFTAR LAMPIRAN ……….... xi 1. PENDAHULUAN ………... 1 1.1. Latar Belakang ………... 1 1.2. Batasan Masalah ………... 2 1.3. Tujuan Penulisan ……….. 2 1.4. Metode Penelitian ………... 2 1.5. Sistematika Penulisan ………... 3 2. LANDASAN TEORI ……...………... 4
2.1. Java 2 Standard Edition ………... 4
2.2.1. Gambaran J2SE ………... 4
2.2.2. Java Class-Library ………... 5
2.2. Swing ……….….. 6
2.3.1. Arsitektur Swing ………...………... 7
2.3.2. Komponen Dasar Swing ………... 8
2.3. AWT ………... 9
2.3.1 Arsitektur AWT ……… 9
2.4. NetBeans IDE 6.8 ……….. 10
2.5. Alasan Menggunakan J2SE ………... 11
2.6. Registry ……….. 12
Properti
Hari
viii
2.6.1. Struktur Registry ………. 12
2.6.2. Jenis Data Registry ……….. 13
2.6.3. Registry Editor Windows ……… 15
2.7. Flowchart ... 17
2.8. Storyboard ………...……….. 18
3. PERANCANGAN DAN IMPLEMENTASI ………. 19
3.1. Tahap Perencanaan ………..….……... 19
3.2. Tahap Analisa ... 19
3.3. Tahap Perancangan ……….…..…...…. 21
3.3.1. Skema Rancangan Aplikasi ………. 21
3.3.2. Flowchart ………. 22
3.3.3. Storyboard ………... 23
3.4. Perancangan Tampilan ……….….. 24
3.4.1. Perancangan Tampilan Menu Fungsi Registry ……… 25
3.4.2. Perancangan Tampilan Help ……… 26
3.4.3. Perancangan Tampilan About ……….. 27
3.5. Tahap Pembuatan …...……….………….…... 28
3.5.1. Pembuatan Class Utama ……….. 28
3.5.2. Pembuatan Tampilan Menu Fungsi Registry ……….. 29
3.5.3. Pembuatan Tampilan Help ……….. 32
3.5.4. Pembuatan Tampilan About ……….... 33
3.6. Tahap Uji Coba ………..…………... 34
4. PENUTUP ……….……….... 38 4.1. Kesimpulan ... 38 4.2. Saran ... 38 DAFTAR PUSTAKA ……….. 40
Properti
Hari
ix
DAFTAR TABEL
Halaman
Tabel 2.1 Tabel Package pada J2SE ……….. 5
Tabel 2.2 Root Registry ... 13
Tabel 2.3 Jenis Data pada Registry ... 13
Tabel 2.4 Tabel Simbol Flowchart ... 17
Properti
Hari
x
DAFTAR GAMBAR
Halaman
Gambar 2.1 Tools Dasar JDK ………. 5
Gambar 3.1 Skema Rancangan Aplikasi ……… 21
Gambar 3.2 Flowchart ………. 23
Gambar 3.3 Storyboard Aplikasi ……… 24
Gambar 3.4 Rancangan Tampilan Menu Fungsi Registry ………. 25
Gambar 3.5 Rancangan Tampilan Help ………. 26
Gambar 3.6 Rancangan Tampilan About ………... 27
Gambar 3.7 Tampilan Menu Fungsi Registry ……….... 35
Gambar 3.8 Tampilan Checkbox Dipilih ………... 36
Gambar 3.9 Tampilan Pesan yang Muncul ……….... 36
Gambar 3.10 Tampilan Help ………... 37
Gambar 3.11 Tampilan About ……….…………... 37
Properti
Hari
xi
DAFTAR LAMPIRAN
Halaman
LAMPIRAN LISTING PROGRAM ………. L- 1 LAMPIRAN OUTPUT PROGRAM ………. L-28
Properti
Hari
1
1. PENDAHULUAN
1.1. Latar Belakang
Registry Windows adalah pusat basis data untuk pengaturan konfigurasi aplikasi dan informasi lainnya yang diperlukan oleh aplikasi. Semua pengaturannya diatur dalam bentuk key. Tiga hal yang dapat dilakukan di dalam
registry yaitu: membaca, menulis dan menghapus key.
Registry dapat dijalankan dengan cara menuliskan regedit pada menu run. Penggunaan registry pada komputer biasanya untuk melakukan pengaturan yang bersifat sistematik. Sebagian besar para userkurang memperhatikan atau merawat
registry komputer dikarenakan penggunaan dan pengaturan yang cukup rumit. Pengaturan yang salah dapat mengakibatkan gangguan pada sistem komputer.
Registry pada sistem operasi Windows sering sekali mengalami beberapa masalah yang diakibatkan oleh beberapa varian virus yang menyerang sistem, khususnya mengubah beberapa pengaturan registry sehingga kinerja sistem operasi terganggu. Pada umumnya, pengaturan yang diubah berada pada rootkey
HKEY_LOCAL_MACHINE/Software yang berisi subkey pengaturan dan informasi software-software yang terinstal pada komputer, dan HKEY_CURRENT_USER/Software yang berisi pengaturan dan informasi sistem seperti task manager, hidden file, regedit, dan folder option.
Berdasarkan latar belakang tersebut, penulis berinisiatif untuk membuat sebuah aplikasi yang dapat dijalankan ke dalam desktopkomputer dengan mudah, dirancang menggunakan bahasa pemrograman Java. Aplikasi ini dapat membantu
user untuk memodifikasi nilai key pada registry dengan cukup mudah. Oleh karena alasan tersebut penulisan ini diberi judul Aplikasi Care Registry Menggunakan J2SE.
Properti
Hari
2
1.2. Batasan Masalah
Aplikasi Care Registry ini mempunyai fungsi untuk memodifikasi nilai(value) dari beberapa key yang ada pada root HKEY_LOCAL_MACHINE dan HKEY_CURRENT_USER dengan tampilan sederhana, yang terdiri dari
checkboxyang mewakili key dan sebuah button.
Pembuatan aplikasi ini menggunakan bahasa pemrograman Java J2SE NetBeans IDE 6.8, karena dalam aplikasi NetBeans terdapat bermacam fasilitas yang dibutuhkan dan mempermudah pembuatan aplikasi ini.
1.3. Tujuan Penulisan
Secara umum penulisan ini bertujuan untuk membuat sebuah aplikasi dekstop yang membantu user dalam merawat registry Windows yang memiliki cukup banyak pengaturan dengan sederhana. Adapun tujuan khusus pembuatan penulisan ini adalah untuk memenuhi penulisan ilmiah(PI) dan sebagai media pembelajaran yang menambah wawasan dalam membuat aplikasi dekstop dengan bahasa pemrograman J2SE.
1.4. Metode Penelitian
Penulisan ini melalui beberapa tahap, yang pertama adalah mengumpulkan materi-materi berdasarkan referensi seperti buku ilmu komputer dan mencari materi dari berbagai artikel dari internet mengenai bahan-bahan pembentuk regristry untuk menunjang pembuatan aplikasi Care Registry.
Langkah kedua, melakukan analisa terhadap softwareyang dibutuhkan dan analisa sistem aplikasi yang akan dibuat.
Langkah ketiga merancang tampilan form interface aplikasi Care Registry
dengan checkbox dan button, serta merancang diagram alur program yang akan dibuat.
Langkah keempat, mengimplementasikan rancangan aplikasi ke dalam bahasa pemrograman yang telah dipilih yaitu Java 2 Standard Edition(J2SE) dengan NetBeans IDE 6.8. Dimana di dalamnya terdapat coding yang nantinya akan membentuk sebuah aplikasi yang diinginkan.
Properti
Hari
3
1.5. Sistematika Penulisan
Adapun sistematika penulisan yang akan disajikan dalam penulisan ini adalah sebagai berikut :
PENDAHULUAN, mengemukakan latar belakang masalah, rumusan masalah, batasan masalah, tujuan penulisan, metode penulisan dan sistematika penulisan.
LANDASAN TEORI, menjelaskan teori-teori yang berhubungan dengan penulisan ini, yang sangat membantu penyelesaian masalah dan perancangan program.
PERANCANGAN DAN IMPLEMENTASI, menjelaskan mengenai perancangan-perancangan yang dilakukan dalam membuat program aplikasi beserta konfigurasi perangkat lunak yang digunakan dan menjelaskan implementasi dari program aplikasi ini yang dibuat dengan menggunakan NetBeans 6.8 J2SE.
PENUTUP, menjelaskan kesimpulan-kesimpulan dari hasil penulisan beserta saran-saran untuk penyempurnaan dan pengembangan selanjutnya.
Properti
Hari
4
2. LANDASAN TEORI
2.1 Java 2 Standard Edition
Aplikasi yang dibuat dan dikembangkan penulis dalam penulisan ini menggunakan bahasa pemrograman berbasis Java 2 Standard Edition(lebih dikenal dengan J2SE). Pada bagian ini, penulis akan menjelaskan dasar-dasar J2SE, meliputi pengenalan J2SE dan komponen pada J2SE. Berikut adalah penjelasannya:
2.1.1. Gambaran J2SE
J2SE atau Java 2 Standard Edition merupakan bahasa pemrograman java untuk aplikasi desktop yang merupakan object-oriented programming. Pada J2SE, terdiri dari dua buah produk yang dikeluarkan untuk membantu dalam membuat aplikasi tanpa tergantung dari platformyang digunakan, yaitu:
1. Java SE Runtime Environment (JRE)
Java Runtime Environment (JRE) menyediakan perpustakaan, Java Virtual Machine (JVM), dan komponen lain untuk menjalankan applet dan aplikasi yang ditulis dengan bahasa pemrograman java. Selain itu, terdapat dua buah kunci teknologi yang merupakan bagian dari JRE, yaitu: Java Plug-in, yang memungkinkan menjalankan applet di browser populer dan Java Web Start, yang menyebarkan aplikasi mandiri melalui jaringan. JRE tidak mengandung utilitas seperti compiler atau debugger untuk mengembangkan applet dan aplikasi.
2. Java Development Kit (JDK)
Java Development Kit (JDK) merupakan perangkat lunak yang digunakan untuk menajemen dan membangun berbagai aplikasi java. JDK merupakan superset dari JRE, berisikan segala sesuatu yang ada di JRE ditambahkan
compiler dan debugger yang diperlukan untuk mengembangkan applet dan aplikasi.
Properti
Hari
5
Pada JDK, terdapat berbagai tools yang digunakan untuk membangun aplikasi java. Toolstersebut digambarkan dengan diagram berikut:
Gambar 2.1 Tools Dasar JDK
2.1.2. Java Class-Library
Bahasa pemrograman java menyediakan library-librarystandar yang telah di-compiledan dapat langsung digunakan dalam implementasi pembuatan sebuah aplikasi. Pada library, terdapat berbagai macam class yang dapat digunakan dan telah dikelompokkan ke dalam package. Package yang tersedia dalam J2SE akan dijabarkan pada tabel berikut:
Tabel 2.1 Tabel Package pada J2SE
Package Nama Package Keterangan
Language java.lang Class-classutama yang merupakan inti dari bahasa java
Utilities java.util Class-classyang mendukung utilitas struktur java
I/O java.io Classyang mendukung berbagai macam tipe input dan output
Properti
Hari
6
Lanjutan Tabel 2.1 Tabel Package pada J2SE
Text java.text
Class yang mendukung lokalisasi penanganan teks, tanggal, bilangan, dan
message
Math java.math
Classuntuk melakukan perhitungan aritmatik arbitrary-precesion, baik
integer atau floating point
AWT java.awt Classuntuk perancangan user-interface dan envent-handling.
Swing javax.swing
Classuntuk membuat berbagai komponen dalam java yang bertingkah
laku sama dengan berbagai platform.
Javax javax Perluasan dari bahasa java
Applet java.applet Classuntuk membuat applet Beans java.beans Class untuk membuat java Beans
Reflection java.lang.reflect Classuntuk memperoleh informasi
run-time
SQL java.sql Classuntuk mendukung akses dan
pengolahan data dalam database RMI java.rmi Classuntuk mendukung distributed
programming
Networking java.net Classuntuk medukung dalam membangun aplikasi jaringan
Security java.security Classuntuk mendukung keamanan kriptografi
2.2. Swing
Java Swing merupakan library java yang digunakan untuk menciptakan
Graphic User Interface (GUI) yang berbasis cross platform atau OS independent.
User interface yang dibangun dengan java swing dapat dijalankan pada sistem
Properti
Hari
7
operasi apa saja yang mendukung java edngan tampilan yang relatif sama, bahkan dapat menyerupai user interfaceWindows XP, Mac OS atau Linux.
2.2.1. Arsitektur Swing
Swing merupakan platform-independent, Model View Controller framework untuk java yang mengikuti model pemrograman tunggal. Arsitektur dari swing terdiri dari:
1. Platform Independence
Swing dapat digunakan diberbagai platform seperti Windows OS, Mac OS, dan Linux karena ekspresi java dan implementasinya hampir sama untuk berbagai platform.
2. Extensible
Swing merupakan arsitektur terpartisi, yang memungkinkan untuk penggunaan implementasi berbagai framework interface tertentu. Pengguna dapat menyediakan kustom implementasi sendiri dari komponen untuk menggantikan implementasi default. Secara umum, pengguna Swing dapat menambahkan framework dengan memperluas framework yang sudah ada dan/atau menyediakan implementasi alternatif komponen inti. Swing juga merupakan framework berbasis komponen, dimana komponen Swing adalah komponen Java Beans yang kompatibel dengan spesifikasi Java Beans Component Architecture.
3. Customizable
Atas dasar model program rendering dari framework Swing, kendali atas rincian rendering komponen dimungkinkan dalam Swing. Representasi visual dari komponen Swing pada umumnya berupa satu set standar elemen. Pengguna program biasanya menyesuaikan komponen Swing standar dengan menetapkan beberapa elemen untuk membuat visualisasi kontrol GUI yang unik.
4. Configurable
Swing bergantung pada mekanisme runtime dan pola komposisi tidak langsung untuk merespon perubahan pengaturan secara run-time. Contohnya
Properti
Hari
8
aplikasi berbasis Swing dapat mengubah tampilan pada saat run-time, dimana pengguna dapat memberikan tampilan mereka sendiri dan diimplementasikan tanpa perubahan apapun pada kode program.
5. Loosely-Coupled and MVC
Pustaka Swing memanfaatkan pola model/view/controller(mvc) desain perangkat lunak yang secara konseptual pasangan data yang dilihat dari kontrol interface pengguna melalui yang dilihat. Karena hal tersebut, komponen Swing dikaitkan model dan programmer dapat menggunakan berbagai macam implementasi atau menyediakan sendiri implementasi tersebut. Penggunaan frameworkSwing tidak memerlukan penciptaan model, karena telah tersedia satu set implementasi yang transparan secara default, yang terkait dengan kelas Jcomponent di perpustakaan Swing. Komponen yang kompleks mungkin memerlukan implementasi model disekitar data spesifik aplikasi seperti: tabel dan pohon.
2.2.2. Komponen Dasar Swing
Secara umum, komponen swing terdiri dari lima bagian yang sering digunakan, yaitu:
1. Top-level Container
Merupakan container dasar dimana komponen lainnya diletakkan. Top-level Container ini terdiri dari Frame, Dialog, dan Applet yang diimplementasikan dalam classJFrame, JDialog, dan JApplet.
2. Intermediate Container
Merupakan komponen perantara untuk peletakkan komponen lainnya, yaitu class JPanel.
3. Atomic Container
Merupakan komponen yang memiliki fungsi spesifik dan biasanya user
berinteraksi langsung dengan jenis komponen ini. Komponen ini terdiri dari: JButton, JTextField, dan JTextArea.
Properti
Hari
9
4. Layout Manager
Layout Manager berfungsi untuk mengatur posisi dari komponen yang diletakkan pada container. Terdapat lima macam layout, yaitu: class
BorderLayout, Boxlayout, FlowLayout, GridBagLayout, dan GridLayout. 5. Event Handling
Event Handling berfungsi untuk menangani event yang dilakukan user, misalnya menekan tombol, mengklik mouse, dan lain sebagainya.
2.3. AWT
AWT atau Abstract Window Toolkit adalah salah satu platform-independent java untuk windowing, graphics, dan user-interface widget toolkit.
Saat ini, AWT sudah termasuk ke dalam bagian dari Java Foundation Classes
(JFC), yaitu standar API untuk pemrograman java berbasis GUI. AWT merupakan GUI toolkit untuk beberapa profil Java ME, seperti konfigurasi alat yang terhubung meliputi java runtimespada mobile telephoneuntuk mendukung AWT.
2.3.1. Arsitektur AWT
AWT menyediakan dua tingkat API, yaitu:
1. Interfaceumum antara Javadengan sistem asli, digunakan untuk
windowing, manajer layout. API ini merupakan inti dari pemrograman
Java GUI dan juga digunakan oleh Swing dan Java2D yang berisi a. Interfaceantara sistem windowingasli dan aplikasi Java. b. Inti dari eventsubsistem GUI.
c. Beberapa manajer layout.
d. Interface untuk perangkat input seperti mouse dan keyboard. e. Paket java.awt.datatransfer untuk digunakan dengan clipboarddan
Drag and Drop.
2. Satu set dasar komponen GUI sepertibutton, textbox, dan menu yang juga menyediakan interface dasar AWT, yang memungkinkan librari render dikompilasi ke kode asli untuk langsung menarik ke AWT canvas
permukaan objek gambar.
Properti
Hari
10
AWT juga membuat beberapa fungsionalitas tinggti yang tersedia untuk aplikasi, seperti:
a. Akses ke sistem tray pada sistem pendukung
b. Kemampuan untuk meluncurkan beberapa aplikasi dekstop seperti browser web dan klien email dari aplikasi
Baik AWT ataupun Swing secara inheren aman, karena kode yang meng-update
GUI harus dijalankan pada thread event pengirim. Kegagalan untuk melakukan hal ini dapat menyebabkan kondisi kebuntuan atau ras. Untuk mengatasi masalah ini, kelas utilitas bernamaSwingWorkermemungkinkan aplikasi untuk melakukan tugas-tugas yang memakan waktu mengikuti acara-interaksi pengguna di thread acara pengirim.
2.4 NetBeans IDE 6.8
NetBeans IDE 6.8 digunakan sebagai editor dalam pembuatan koding aplikasi ini karena memiliki komponen yang dibutuhkan dalam perancangan. Komponen tersebut diantaranya:
a. Main Windows
Jendela utama ini bagian dari IDE yang mempunyai fungsi yang sama dengan semua fungsi utama dari program aplikasi Windows lainnya. Jendela utama Netbeans terbagi menjadi tiga bagian, berupa Main Menu, Toolbar dan Component Pallete.
b. Toolbar
Netbeans memiliki beberapa toolbar yang masing-masing memiliki perbedaan fungsi dan setiap tombol pada bagian toolbar berfungsi sebagai pengganti suatu menu perintah yang sering digunakan. Toolbar sering disebut juga dengan Speedbar.
Toolbar terletak pada bagian bawah baris menu. Pada kondisi default Netbeans memiliki beberapa bagian toolbar, antara lain : Build Main Project, Clean and Build Main Project, Run Main Project, Debug Main Project, dan Profile Main Project.
Properti
Hari
11
c. Component Palette
Component Pallete berisi kumpulan ikon yang melambangkan komponen-komponen yang terdapat pada VCL (Visual Component Library), pada Component Pallete akan ditemukan beberapa page control, seperti Swing Containers, Swing Controls, Swing Menus, Swing Windows, AWT, Beans, dan Java Persistence.
d. From Designer
Form Designer merupakan suatu objek yang dapat dipakai sebagai tempat untuk merancang program aplikasi. Form berbentuk sebuah meja kerja yang dapat diisi dengan komponen-komponen yang diambil dari Component Pallete.
e. Source Editor
Source Editor merupakan tempat untuk menuliskan kode program. Pada bagian ini dapat dituliskan pernyataan-pernyataan dalam Object Java. Keuntungan bagi pemakai Netbeans adalah bahwa tidak perlu menuliskan kode-kode sumber, karena Netbeans telah menyediakan kerangka penulisan sebuah program seperti yang tampak pada Gambar 2.8
f. Object Inspektor
Object Inspector digunakan untuk mengubah properti atau karakteristik dari sebuah komponen. Object Inspector terdiri dari dua tab, yaitu Properties dan Events seperti yang tampak pada Gambar 2.10.
2.5 Alasan Menggunakan J2SE
J2SE merupakan salah satu edisi Java yang biasa digunakan dalam membuat aplikasi desktop komputer. Hal ini dikarenakan terdapat class yang memudahkan perancangan, seperti Swing dan AWT. Kedua class tersebut terdiri dari berbagai komponen yang berguna dalam pembuatan aplikasi, seperti:
checkbox, button, frame¸dan sebagainya yang bersifat multiplatform, yang berarti
Properti
Hari
12
tampilan aplikasi akan berbeda pada saat dijalankan pada sistem operasi yang berbeda. Selain hal tersebut, kombinasi dari Java API(Application Programming Interface) dan JVM(Java Virtual Machine) memudahkan aplikasi dijalankan pada
desktopkomputer. Oleh karena hal tersebut, bahasa pemrograman ini cocok untuk membuat aplikasiCare Registry.
2.6 Registry
Registry, dalam platform sistem operasi Microsoft Windows 32-bit, merupakan sebuah basis data yang disusun secara hierarkis yang mengandung informasi mengenai konfigurasi sebuah sistem, mulai dari konfigurasi perangkat keras, perangkat lunak, asosiasi ekstensi berkas dengan aplikasinya hingga preferensi pengguna. Registry merupakan pengganti berkas-berkas konfigurasi *.INI yang digunakan dalam sistem Windows 16-bit (Windows 3.x dan Windows for Workgroups).Registry, pertama kali diperkenalkan di dalam sistem Windows 16-bit sebagai penampung informasi mengenai pemetaan/asosiasi ekstensi berkas dengan aplikasinya, dan kemudian dikembangkan menjadi basis data dengan cakupan yang luas pada sistem-sistem operasi keluarga Windows NT.Registryjuga kemudian digunakan pada sistem operasi kelas rumahan: Windows 95, Windows 98 dan Windows ME, tapi memang implementasi yang cukup bagus dari registry terdapat di dalam keluarga sistem operasi Windows NT.
2.6.1 Struktur Registry
Strukturregistryagak mirip dengan struktur direktori dalam sistem berkas. Selain itu,registryjuga dapat diakses dengan menggunakan sintaksis yang sama dengan cara mengakses berkas, dengan menggunakan karakter garis miring terbalik (backslash) untuk menandakan tingkatan hierarkis. Susunannya adalah seperti<subtree>\<key>\<subkey...>. Setiapkeydansubkeytersebut dapat memiliki nilai yang dapat ditentukan atau nilaidefault, yang disebut sebagaiValue. Akan tetapi, cara mengaksesvaluetidaklah sama dengan cara mengakses berkas dalam sistem berkas, mengingat nama value dapat mengandung karakterbackslashyang dapat menjadi ambigu ketika menggunakan cara baca seperti halnya mengakses sistem berkas.
Properti
Hari
13
RegistryWindows terdiri atas beberapa anak pohon berikut, yang disusun secara hierarkis denganMy Computersebagairoot directory-nya:
Tabel 2.2 Root Registry
RootKey Keterangan
HKEY_CURRENT_USER Menyimpan informasi/data yang diasosiasikan dengan pengguna yang sedang masuk log.
HKEY_USERS Menyimpan informasi/data mengenai semua akun pengguna di dalam mesin yang sama
HKEY_CLASSES_ROOT
Menyimpan informasi/data mengenai asosiasi berkas dengan aplikasinya dan registrasi objek Component Object Model (COM). HKEY_LOCAL_MACHINE Menyimpan informasi/data mengenai semua
konfigurasi mesin yang bersangkutan. HKEY_PERFORMANCE
DATA
Menyimpan informasi mengenai kinerja sistem yang dikumpulkan oleh performance
counter Windows NT.
HKEY_CURRENT_CONFIG Berisi beberapa informasi mengenai profil perangkat keras yang sedang digunakan.
2.6.2 Jenis Data Registry
Sebuahvaluepada registrydapat memiliki jenis-jenis data seperti tabel 2.3 di bawah ini:
Tabel 2.3 Jenis Data pada Registry
Jenis data Identifier Keterangan
REG_NONE 0x00 Jenis data belum ditentukan
REG_SZ 0x01 Teks/string berukuran tetap
REG_EXPAND_SZ 0x02 Teks/string yang dapat berubah-ubah.
REG_BINARY 0x03 Jenis data biner (dapat berupa apa
saja)
REG_DWORD 0x04 Jenis data bilangan dengan ukuran
32-bit
Properti
Hari
14
Lanjutan Tabel 2.3 Jenis Data pada Registry
REG_DWORD_LITTLE_ENDIAN 0x05
Jenis data bilangan dengan ukuran 32-bit, dengan formatlittle-endian. Dalam Windows NT 5.x, sama saja dengan REG_DWORD biasa.
REG_DWORD_BIG_ENDIAN 0x06
Jenis data bilangan dengan ukuran 32-bit, dengan formatbig-endian.
REG_MULTI_SZ 0x07
Jenis data teks/string dengan banyak baris yang dipisahkan dengan dua karakternull(0x00).
REG_LINK 0x08
Symbolic linkdengan
menggunakan format Unicode ke sebuah objek dalam Windows NT Object Manager.
REG_RESOURCE_LIST 0x09 Digunakan untuk menampung
sumber daya perangkat keras. REG_FULL_RESOURCE_DESCRIPTOR 0x10 Digunakan untuk menampung
sumber daya perangkat keras.
REG_RESOURCE_REQUIREMENTS_LIST 0x11
Digunakan untuk menampung kebutuhan sumber daya perangkat keras.
REG_QWORD 0x12 Jenis data bilangan dengan
ukuran 64-bit.
REG_QWORD_LITTLE_ENDIAN 0x13
Jenis data bilangan dengan ukuran 64-bit, dengan menggunakan format little-endian.
REG_QWORD_BIG_ENDIAN 0x14
Jenis data bilangan dengan ukuran 64-bit, dengan
menggunakan formatbig-endian.
Properti
Hari
15
2.6.3 Registry Editor Windows
Dalam Windows 16-bit, terdapat sebuah komponen editor registry, yang disebut sebagai "Registration Info Editor" atau "Registration Editor". Seperti yang telah dibahas sebelumnya, bahwa registry dalam Windows 16-bit hanya terdapat asosiasi berkas atau objek OLE dengan aplikasinya saja, maka editor registry dalam sistem ini pun hanya dapat menyunting hal tersebut saja.
Windows NT yang dirilis kemudian memperkenalkan banyak konsep baru terhadap registry Windows, seperti halnya mampu menangani beberapasub-tree, dan juga atribut keamanan denganaccess control list. Dalam Windows NT 3.1, terdapat satu editor registry, yang disebut denganregedt32.exe, yang lebih bagus dan mampu menyunting beberapa jenis tipe data.
Windows 95 juga memperkenalkan editor registry baru, yang dibuat berbasiskan registry editor bawaan Windows NT, tetapi lebih sederhana (tidak ada atribut keamanan, dan tidak ada proteksi read-only). Registry Editor dalam Windows 95/98/ME ini disebut sebagaiRegedit.exesaja.
Saat Microsoft merilis Windows NT 4.0, setelah Windows 95, di sistem operasi tersebut terdapat dua editorregistry, yakni regedit.exe dan
regedt32.exe. Regedit.exemerupakan bawaan Windows 95, sementara
regedt32.exemerupakan bawaan Windows NT, yang diperbarui. Ada beberapa perbedaan di antara keduanya, yakni sebagai berikut:
Regedit.exe, ditampilkan seperti halnya Windows Explorer, dengan root-directorydengan nama My Computer dan akan menampilkan semua sub-tree yang dimuat di bawahnya. Regedit.exe hanya menampilkan satuwindowsaja. Sementara itu, registry dalam regedt32.exe ditampilkan seperti halnya Program Manager, dengan setiap sub-tree ditampilkan dalam setiap window-nya masing-masing, sehingga sebuah window hawindow-nya mengandung sub-tree saja.
Regedit.exe merepresentasikan komponen sebuah value (nama, jenis dan datanya) sebagai tiga kolom yang terpisah dari sebuah tabel. Sementara, regedt32.exe akan merepresentasikan komponen sebuah value sebagai daftar string.
Properti
Hari
16
Regedit.exe mendukung klik-kanan terhadap sebuah entri dalam struktur tampilan pohon untuk mengatur propertinya dan beberapa pengaturan lainnya. Sementara,regedt32.exemengharuskan semuanya dilakukan dari menu utama aplikasi.
Karena regedit.exe adalah program bawaan Windows 95, program tersebut tidak dapat menyunting izin akses (karena memang izin akses tidak terdapat dalam Windows 9x dan hanya terdapat di dalam keluarga sistem operasi Windows NT). Oleh karena itu, satu-satunya cara untuk mengakses registry dalam Windows NT secara penuh adalah dengan menggunakan program regedt32.exe.
Regedit.exe hanya mendukung beberapa jenis data saja (REG_SZ, REG_DWORD/REG_DWORD_LITTLE_ENDIAN, dan REG_BINARY). Sementara itu, Regedt32.exe mendukung banyak jenis data, yakni REG_SZ,
REG_DWORD, REG_MULTI_SZ, REG_EXPAND_SZ, dan
REG_RESOURCE_LIST.
Hal tersebut terus diberlakukan dalam Windows 2000. Dan, pada Windows XP dan Windows Server 2003, kemampuan kedua program tersebut digabungkan ke dalam satu program saja, regedit.exe. Regedt32.exe juga masih ada, tapi hanya berupasymbolic linksaja. Jika menjalankan regedt32.exe dalam kedua sistem operasi tersebut, hal tersebut sama saja dengan menjalankan regedit.exe. Windows Vista pun demikian.
Program editor registry bawaan Windows, baik itu menggunakan regedit.exe maupun regedt32.exe mampu melakukan pengeksporan registry ke dalam sebuah berkas dengan ekstensi.REGatau.KEY. Hasil pengeksporan tersebut sama saja dengan berkas teks untuk konfigurasi biasa, yakni .INI. Path registry lengkap disusun sebagai header, sementara itu, entri registry dan nilainya disusun di bawahnya. Selain tentunya dapat melakukan pengeksporan registry ke dalam sebuah berkas teks, program itu juga dapat melakukan pengimporan.
Properti
Hari
17
2.7 Flowchart
Flowchart adalah diagram alur yang menggambarkan serangkaian proses urutan - urutan instruksi pada suatu program atau langkah - langkah penyelesaian suatu masalah, merupakan penyajian dari suatu algoritma. Flowchart dibuat sebelum aplikasi dibuat dan diimplementasikan. Beberapa simbol flowchart yang sering digunakan, antara lain(lihat tabel 2.9):
Tabel 2.4 Simbol-Simbol Diagram Alur
Simbol Arti
Terminal
Simbol awal/akhir suatu program.
Input / Output Mempresentasikan input data atau output data yang diproses atau informasi.
Proses Untuk memberikan harga kepada suatu variabel.
Penghubung Halaman yang Sama
Bila flowchart terpotong dan masih mempunyai sambungan dalam halaman yang sama.
Penghubung Halaman Berbeda
Penghubung bila diagram alur terputus disebabkan pergantian halaman.
Kondisi Untuk memutuskan percabangan yang diambil sesuai dengan kondisi, Benar atau Salah.
Dokumen / Print
Input/Output dalam format yang dicetak.
Arah Alur(Panah)
Menunjukkan bagan instruksi selanjutnya.
InputManual
Input secara manual dari keyboard.
Properti
Hari
18
2.8 Storyboard
Storyboard merupakan gambaran serangkaian proses dengan tampilan desain dari aplikasi yang dibuat, yang memudahkan dalam merancang aplikasi. Dengan menggunakan stroyboard, pembuatan aplikasi lebih mudah karena tiap – tiap rancangan tampilan sangat jelas terlihat komponen apa saja yang ada pada rancangan tampilan tersebut dan terdapat panah yang menunjukkan proses pemanggilan tampilan lain yang berhubungan dengan fungsi dari komponen yang digunakan. Storyboard memiliki beberapa fungsi, diantaranya: menjadi panduan bagi programmer dan graphic designer dalam merancang sebuah aplikasi, mengetahui elemen multimedia yang akan digunakan pada rancangan, menjaga konsistensi multimedia pada aplikasi, memungkinkan pengimplementasian rancangan pada platform yang berbeda karena storyboard bersifat platform independent, dan memungkinkan klien dan tim memeriksa, menyetujui, dan meningkatkan rancangan.
Storyboard memiliki beberapa elemen, yaitu: nama aplikasi(program) atau modul dan nomor halaman atau nomor layar, gambar sketsa layar atau halaman aplikasi beserta rincian objek-objek yang digunakan dan terdapat pada rancangan, meliputi: teks, gambar, animasi, video, audio, narasi, warna, penempatan objek, gambar, warna dan jenis huruf dari teks, interaksi, percabangan dan aksi lainnya.
Properti
Hari
19
3. PERANCANGAN DAN IMPLEMENTASI
3.1. Tahap Perencanaan
Registry sistem operasi Windows sering mengalami permasalahan yang disebabkan program yang dikategorikan sebagai virus komputer. Program virus tersebut mengubah nilai subkey pada registry, umumnya pada rootkey
HKEY_LOCAL_MACHINE(HKLM) dan HKEY_CURRENT_USER(HKCU). Pengubahan pengaturan pada HKLM, diantaranya: penghapusan atau pengubahan
key yang berisi informasi software yang terinstal pada komputer, sedangkan pengaturan pada HKCU meliputi: fungsi key untuk task manager, registry editor(regedit), key hidden, superhidden, file extension, dan folder option. Berdasarkan uraian yang disebutkan diatas, Dengan menjalankan aplikasi tersebut, maka pengguna dapat mengubah pengaturan registry komputer dengan mudah karena pengaturan tersebut disusun secara list dengan checkbox. Apabila pengguna ingin mengubah suatu pengaturan dalam registry, pengguna hanya cukup memilih list checkbox pengaturan yang sesuai dengan keinginan dan menekan tombol ok.
3.2. Tahap Analisa
Tahap ini merupakan tahap menganalisis dan mengumpulkan seluruh kebutuhan dan informasi untuk membangun aplikasi dekstop care registry ini. Penulis menggunakan referensi buku “Konfigurasi dan Manipulasi Registry Windows XP” karangan Bunafit Nugroho, yang berisi istilah-istilah dan struktur
registry Windows yang dapat dimodifikasi. Tahap analisa ini terbagi menjadi tahap analisa perangkat lunak, analisa sistem aplikasi dan analisa perangkat yang dibutuhkan.
Pada tahapan analisa perangkat lunak, hal yang dilakukan adalah mencari materi yang dibutuhkan, seperti mencari buku - buku yang berkenaan tentang pemrograman J2SE(Java 2 Standard Edition), konsep Swing dan AWT(Abstract Window Toolkit). Aplikasi berbasis open source yang dipilih untuk membuat
Properti
Hari
20
aplikasi care registry ini adalah NetBeans IDE 6.8, sebagai media editor pemrograman J2SE. Aplikasi tersebut memberikan kemudahan dalam membuat sebuah aplikasi berbasis desktop, karena terdapat toolbar komponen yang dapat dipilih dengan dragdan dropsehingga desain tampilan aplikasi mudah dirancang.
Pada tahapan analisa sistem, hal yang perlu dilakukan adalah mempelajari fungsi - fungsi dari komponen yang akan digunakan dan interaksi komponen tersebut dengan komponen lain untuk membangun aplikasi ini. Tahapan analisa sistem juga menggambarkan serangkaian proses dalam bentuk flowchart(lihat gambar 3.2) dan menentukan batasan masalah pembuatan aplikasi, pengembangan dan fungsi aplikasi, serta pengguna aplikasi. Aplikasi yang dibuat dapat mengakses registry sistem operasi Windows dan mengubah beberapa pengaturan pada root HKLM dan HKCU. Aplikasi ini dapat digunakan oleh pengguna yang memiliki komputer yang telah menginstal JDK(Java Development Kit) dan menggunakan sistem operasi Windows.
Pada tahapan analisa sistem, juga dijelaskan spesifikasi perangkat yang digunakan untuk membuat aplikasi. Spesifikasi perangkat keras(hardware) yang digunakan sebagai berikut :
1. ProccessorIntel(R) Pentium D CPU 3.00GHz. 2. Memorysebesar 1 GB RAM..
3. Harddisk160 GB.
4. VGA Card NVIDIA GeForce 7300 GT 512 MB. 5. Monitor Plug and Play
6. Keyboard StandardPS/2 Keyboard 7. Mouse PS/2
Sedangkan untuk spesifikasi perangkat lunak(software) yang digunakan sebagai berikut :
1. Microsoft Windows Vista Ultimate Service Pack 1.
Microsoft Windows Vista Ultimate disini merupakan sistem operasi yang digunakan dalam pembuatan aplikasi ini.
Properti
Hari
21
2. JDK 1.6.0_18 for Windows i586.
Java versi 1.6 digunakan dalam pembuatan aplikasi sebagai pustaka utama Java.
3. JRE 1.6.0_18 for Windows i586.
java environment versi 1.6 digunakan aplikasi sebagai pendukung JDK 1.6.
4. NetBeans IDE 6.8.
Penggunaan NetBeans versi 6.8 sebagai editor sekaligus compiler
dan builderdalam pembuatan aplikasi.
3.3. Tahap Perancangan
Pada tahap ini, penulis akan menjelaskan mengenai segala persiapan yang dibutuhkan dalam pembuatan aplikasi ini. Adapun langkah – langkah pembuatan aplikasi ini akan dijelaskan secara detail pada subbab berikut.
3.3.1. Skema Rancangan Aplikasi
Aplikasi ini dapat mengubah pengaturan registry windows dengan memanfaatkan perintah – perintah pengaturan yang telah di-list dengan sedemikian mudah untuk dapat digunakan. Skema dan rancangan ini dibuat dengan tujuan mempermudah dalam proses pembuatan aplikasi. Skema dan rancangan aplikasi dapat dilihat pada gambar 3.1.
Gambar 3.1 Skema Rancangan Aplikasi
Gambar tersebut menjelaskan bahwa pengguna yang ingin mengubah pengaturan registry komputer dapat langsung memilih pengaturan yang sesuai yang ada pada list pengaturan dalam aplikasi dengan syarat komputer tersebut telah mendukung aplikasi JAVA untuk mengeksekusi file jar.
Registry Windows List pengaturan
registry
Komputer Pengguna
Properti
Hari
22
3.3.2. Flowchart
Flowchart merupakan tahapan perencanaan yang memuat tentang alur program yang diinginkan dalam aplikasi, berfungsi untuk mempermudah dalam pembuatan aplikasi. Pada aplikasi ini, terdapat kondisi untuk checkbox dimana checkbox hanya dapat dipilih satu untuk dieksekusi dengan button. Bentuk detail flowchart dapat dilihat pada gambar 3.2 dibawah ini.
Properti
Hari
23
Gambar 3.2 Flowchart
Gambar 3.2 menjelaskan alur program aplikasi yang dibuat. Pada saat aplikasi dijalankan, halaman yang pertama muncul adalah halaman menu list
pengaturan registryyang dapat dipilih untuk mengubah pengaturan registrysesuai yang diinginkan. Ketika salah satu list dipilih dan pengguna menekan tombol ok, maka akan tampil kotak pesan yang memberikan penjelasan bahwa pengaturan
registry yang dipilih telah berhasil diubah. Aplikasi berakhir ketika pengguna menutup aplikasi atau memilih menu exitpada tampilan menu list.
3.3.3. Storyboard
Storyboard merupakan hal yang penting dalam pembuatan rancangan aplikasi karena memperlihatkan hubungan rantai kerja dari beberapa halaman atau
form yang berbeda. Pada tahapan ini akan dibahas stroyboard program yang dilakukan user terhadap aplikasi yang sudah siap digunakan. Storyboardtersebut akan dijelaskan melalui gambar 3.3.
Properti
Hari
24
Gambar 3.3 Storyboard Aplikasi
Pertama kali usermengaktifkan aplikasi, akan ditampilkan sebuah jendela
list checkboxyang dapat dipilih satu dari dua belas karena jika telah memilih satu
checkbox, checkbox yang lain tidak dapat dipilih. Kedua belas checkbox tersebut terbagi menjadi dua bagian, yaitu: bagian “enabled” dan “disabled”. Ketika salah satu checkbox dipilih dan menekan tombok “OK”, akan ditampilkan sebuah jendela pesan yang memberitahukan bahwa nilai dari registry telah berhasil diubah sesuai dengan nama dari checkbox yang dipilih. Ketika jendela pesan tersebut di-close atau menekan “OK” pada jendela pesan, program kembali ke menu list checkbox. Pada menu bar Help apabila dipilih akan ada submenu yaitu “About..” yang apabila dipilih akan menampilkan jendela about dari aplikasi yang berisi keterangan dari nama aplikasi, deskripsi, vendor, versi, homepage, dan email. Pada menu bar File terdapat submenu “Exit” untuk menutup aplikasi atau dapat juga memilih iconX pada jendela.
3.4. Perancangan Tampilan
Pada tahap ini, akan dijelaskan mengenai perancangan tampilan pada aplikasi ini yang terdiri dari: tampilan listmenu pengaturan registry, dan tampilan about.
Properti
Hari
25
3.4.1. Perancangan Tampilan Menu Fungsi Registry
Pada perancangan menu ini, beberapa komponen dari paket java yaitu paket swing digunakan, antara lain: jmenubar untuk menu bar File dan Help, jpanel berupa mainpanel untuk menu dan statuspanel, jlabel untuk keterangan fungsi menu, jcheckbox berupa pilihan fungsi registry yg dapat dipilih, jbutton berupa tombol untuk eksekusi.
Gambar 3.4 Rancangan Tampilan Menu Fungsi Registry
Tampilan ini dirancang sebagai menu fungsi registry dimana judul dari tampilan ini adalah nama dari aplikasi yaitu Care Registry. Terdapat 2 buah menu bar yang terdiri dari: File yang memiliki submenu exit untuk menutup aplikasi dan Help yang memiliki submenu about untuk menampilkan tampilan about. Tampilan terbagi menjadi 2, terdiri dari: bagian kiri dengan label1 bertuliskan “Enable” sebagai keterangan dari checkbox untuk mengaktifkan beberapa fungsi, sedangkan bagian kanan dengan label2 bertuliskan “Disable” sebagai keterangan dari checkbox untuk menonaktifkan beberapa fungsi. Fungsi tersebut dituliskan sebagai label dari checkbox antara lain: Registry Tools untuk checkbox1 dan checkbox6, Task Manager untuk checkbox2 dan checkbox7, Hidden untuk checkbox3 dan checkbox8, Super Hidden untuk checkbox4 dan checkbox9, File Extension untuk checkbox5 dan checkbox10, Folder Option untuk checkbox11
Properti
Hari
26
dan checkbox12. Button digunakan untuk mengeksekusi perintah yang ada pada checkbox yang telah dipilih.
3.4.2. Perancangan Tampilan Help
Pada perancangan tampilan ini, digunakan komponen swing dari paket java berupa jlabel untuk memberikan suatu keterangan, jbutton berupa tombol untuk menutup tampilan, dan imagelabel berupa gambar yang ingin ditampilkan.
Gambar 3.5 Rancangan Tampilan Help
Tampilan ini menampilkan keterangan tentang aplikasi, fungsi didalamnya dan cara menggunakan aplikasi yang merupakan teks dari label-label tersebut. Label1 bertuliskan “Help : Care Registry“, label2 bertuliskan “Aplikasi ini berfungsi untuk menon-aktifkan / mengaktifkan fungsi dari sistem”, label3 bertuliskan “Windows komputer anda. Diantaranya: “,label4 bertuliskan “Task Manager :: Mengakses taskmgr.exe “,label 5 bertuliskan “Regedit :: Mengakses ke regedit.exe / regedit32.exe “,label 6 bertuliskan “Folder Option :: menampilkan menu folder option “,label7 bertuliskan “ExtFile :: menampilkan ekstensi file “,label8 bertuliskan “Hidden :: Menampilkan File tersembunyi “,label9 bertuliskan Super Hidden :: Menampilkan File Sistem tersembunyi “,label10 bertuliskan “========================================== “,label11 bertuliskan “============================================== “,label12 bertuliskan “ “,label13 bertuliskan “Cara Menggunakan Aplikasi ini
Properti
Hari
27
“,label14 bertuliskan “1. Pilih Checkbox yang diinginkan(hanya bisa 1)“,label15 bertuliskan “2. Ketika 1 checkbox dipilih, checkbox lain menjadi tidak dapat dipilih dan tombol “,label16 bertuliskan “Ok akan aktif, Klik tombol OK untuk mengeksekusi checkbox yang dipilih “,label17 bertuliskan “3. Akan muncul kotak pesan nilai registry berhasil diubah “,dan button bertuliskan “Close”.
3.4.3. Perancangan Tampilan About
Pada perancangan tampilan ini, digunakan komponen swing dari paket java berupa jlabel untuk application name, description label, version label, vendor label, hompepage label, vendor, hompepage, version, label1, label2, label3, dan label4 yang memberikan suatu keterangan, jbutton berupa tombol untuk menutup tampilan, dan imagelabel berupa gambar yang ingin ditampilkan.
Gambar 3.6 Rancangan Tampilan About
Tampilan ini menampilkan keterangan dari aplikasi berupa nama aplikasi, deskripsi dari aplikasi, versi dari aplikasi, desainer aplikasi, vendor aplikasi, homepage aplikasi, email dari pembuat aplikasi. Nama aplikasi yaitu Care Registry, deskripsi aplikasi bertuliskan “A simple Java desktop application to change the value of Registry Editor.”, versi dari aplikasi 1.0, desainer aplikasi pada label4 bertuliskan ‘Hari “Rhy-Lone” Sulistio’, vendor aplikasi pada label vendor bertuliskan none, label homepage bertuliskan “http://rhy2lonely.wordpress.com/”, dan label2 bertuliskan email dari pembuat yaitu “rhyluvoct@gmail.com”, dan button bertuliskan “Close”.
Properti
Hari
28
3.5. Tahap Pembuatan
Sebelum membuat aplikasi ini terlebih dahulu dilakukan instalasi beberapa
software yang dibutuhkan dalam pembuatan aplikasi ini. Adapun software yang digunakan adalah JDK 6 update 18 untuk dan JRE 6 update 18 untuk Windows i586 serta NetBeans IDE 6.8 untuk Windows.
Setelah selesai dengan proses instalasi aplikasi yang dibutuhkan, maka tahap selanjutnya adalah proses pembuatan aplikasi. Dalam proses ini, ada beberapa yang harus diketahui diantaranya adalah, adanya file tambahan yang diperlukan untuk pembuatan aplikasi seperti file librari dan pustaka JAVA yang tidak termasuk pada saat instalasi JDK 6 dan NetBeans IDE 6.8, pembuatan halaman listfungsi registry, dan pembuatan halaman help. Berikut akan dijelaskan langkah untuk pembuatan aplikasi.
3.5.1. Pembuatan Class Utama
Pada aplikasi ini, class utama adalah class yang merupakan turunan langsung dari classSingleFrameApplication, yang berisi method utama dari suatu aplikasi Frame. Method-method tersebut antata lain: startup(), configureWindow(java.awt.Window root), CareRegapp getApplication(), dan main(String [] args). Method startup() digunakan untuk menampilkan halaman dari class CareRegView dengan membentuk objek class CareRegView yang merupakan halaman menu yang terdiri dari pilihan-pilihan fungsi registry dengan
checkbox.
public class CareRegApp extends SingleFrameApplication { @overide protected void startup() {
show(new CareRegView(this)); } … }
Properti
Hari
29
Potongan statement diatas adalah method startup() dari class CareRegApp dimana terdapat statement show(new CareRegView(this)); digunakan untuk menampilkan objek dari classCareRegView, dalam hal ini menampilkan halaman menu fungsi registryyang akan dibahas lebih lanjut pada sibbab 3.5.3.
Method configureWindow(java.awt.Window root) tidak ada statement
sehingga method ini memrupakan method tanpa fungsi namun termasuk method yang harus dituliskan dari class turunan SingleFrameApplication untuk mengatur window dari aplikasi. Method CareRegApp getApplication() { return Application.getInstance(CareRegApp.class); } digunakan untuk mendapatkan instansi dari aplikasi dan mengembalikan nilai instansi tersebut pada class
CareRegApp.
Method main(String[] args) { launch(CareRegApp.class, args); } digunakan sebagai method utama untuk menjalankan aplikasi, dengan kata lain memanggil method CareRegApp.
3.5.2. Pembuatan Tampilan Menu Fungsi Registry
Menu fungsi registry merupakan tampilan yang akan muncul ketika mengakses aplikasi ini. Pada halaman ini, menggunakan komponen class swing ,yaitu: JButton, JCheckBox, JFrame, JLabel, JSeparator, JPanel, JMenuBar,JProgressBar, Icon, JDialog, Timet, JOptionPane dengan alamat javax.swing. class awt yang digunakan antara lain: ActionEvent dan ActionListener dengan alamat java.awt.event. class jdesktop antara lain: Action, ResourceMap, SingleFrameApplication, FrameView, dan TaskMonitor dengan alamat org.jdesktop.application. Sedangkan komponen class win32.registry yang digunakan, yaitu: RegistryKey, RegistryValue, RootKey, ValueType, dan Win32Exception dengan alamat ca.beq.util.win32.registry. Secara umum
statement yang digunakan untuk import class dari suatu alamat adalah import [alamat]. [namaClass];, sedangkan jika ingin menggunakan seluruh class pada alamat tersebut, [namaClass] dapat diganti dengan “*”.
Properti
Hari
30
Tampilan ini menampilkan menu fungsi regitry berupa pilihan checkbox
yang dibuat pada class CareRegView. Untuk mempermudah proses pemrograman, classCareRegView dibuat menjadi class turunan dari FrameView. Perhatikan potongan source codeberikut,
public class CareRegView extends FrameView {…}
Pengertian dari statement diatas adalah membuat class CareRegView dimana merupakan class turunan dari class FrameView. Pada tampilan ini, ditambahkan komponen seperti checkbox, label, dan, button dimana checkbox
yang digunakan sebanyak 12, 2 buah label, dan 1 buah button.
Langkah selanjutnya adalah menambahkan reaksi pada setiap aksi/kegiatan pada checkbox dan button, dimana setiap reaksi yang dilakukan
button akan mengacu pada checkbox yang dipilih. Untuk itu, pada method jButton1.ActionPerformed(java.awt.event.ActionEvent evt) yang akan bereaksi jika salah satu checkboxdi pilih dengan fungsi .isSelected. Jika checkbox1 dipilih maka akan menjalankan perintah untuk men-enableregistry tools. Jika checkbox2
dipilih maka akan menjalankan perintah untuk men-enable task manager. Jika
checkbox3dipilih maka akan menjalankan perintah untuk men-enablehidden. Jika checkbox4 dipilih maka akan menjalankan perintah untuk men-enable super hidden. Jika checkbox5 dipilih maka akan menjalankan perintah untuk
men-enable file extension. Jika checkbox6 dipilih maka akan menjalankan perintah untuk men-disable registry tools. Jika checkbox7 dipilih maka akan menjalankan perintah untuk men-disable task manager. Jika checkbox8 dipilih maka akan menjalankan perintah untuk men-disable hidden. Jika checkbox9 dipilih maka akan menjalankan perintah untuk men-disable super hidden. Jika checkbox10
dipilih maka akan menjalankan perintah untuk men-disable file extension. Jika
checkbox11 dipilih maka akan menjalankan perintah men-enable folder option. Sedangkan jika checkbox12 yang dipilih, maka program akan menjalankan perintah men-disablefolder option.
Properti
Hari
31
Penambahan reaksi dari button yang telah dibuat seperti pada potongan
source code berikut,
if (jCheckBox1.isSelected()){
RegistryKey r = new RegistryKey(RootKey.HKEY_CURRENT_USER,
"Software\\Microsoft\\Windows\\CurrentVersion\\Policies" + "\\System");
RegistryValue v = new RegistryValue("DisableRegistryTools", ValueType.REG_DWORD, 0);
r.setValue(v);
JOptionPane.showMessageDialog(null,"Value change success" + "\nRegistry Tools has beed enabled");
}
Blok statement diatas digunakan untuk men-enable registry tools apabila
checkbox1 dipilih dan menekan tombol “OK”. Pada code diatas terdapat pembuatan objek dari RegistryKey yaitu r dimana terdiri dari RootKey dan alamat letak dalm registry. Terdapat juga pembentukkan objek RegistryValue v sebagai nilai dari registry yang akan diubah nilainya, terdiri dari nama registryvalu, valuetype yaitu tipe data dari value tersebut, dan nilai. Statement r.setValue(v) digunakan untuk mengatur value yang diinginkan sebagai nilai dari registry yang ingin diubah. Pada blok tersebut akan menampilkan sebuah messagebox yang menampilkan teks bahwa nilai dari value telah berhasil diubah.
Untuk reaksi pada checkbox dituliskan masing-masing pada method jCheckBox[i]ActionPerformed(java.awt.event.ActionEvent evt) dimana i merupakan pengganti dari angka 1 hingga banyaknya checkbox yang digunakan, bukan index dari array. Jika checkbox dipilih maka checkbox yang tidak dipilih diatur properti enable-nya menjadi false dan properti enable dari button menjadi true. Sedangkan jika checkbox yang dipilih tadi tidak di-check, maka properti
enable dari checkbox lain menjadi true dan properti enable button menjadi false. Penjelasan di atas dapat dilihat pada potongansource codeberikut ini:
Properti
Hari
32
private void jCheckBox1ActionPerformed(java.awt.event.ActionEvent evt) { if (jCheckBox1.isSelected()){ jButton1.setEnabled(true); jCheckBox2.setEnabled(false); jCheckBox3.setEnabled(false); jCheckBox4.setEnabled(false); jCheckBox5.setEnabled(false); jCheckBox6.setEnabled(false); jCheckBox7.setEnabled(false); jCheckBox8.setEnabled(false); jCheckBox9.setEnabled(false); jCheckBox10.setEnabled(false); jCheckBox11.setEnabled(false); jCheckBox12.setEnabled(false); } else { jButton1.setEnabled(false); jCheckBox2.setEnabled(true); jCheckBox3.setEnabled(true); jCheckBox4.setEnabled(true); jCheckBox5.setEnabled(true); jCheckBox6.setEnabled(true); jCheckBox7.setEnabled(true); jCheckBox8.setEnabled(true); jCheckBox9.setEnabled(true); jCheckBox10.setEnabled(true); jCheckBox11.setEnabled(true); jCheckBox12.setEnabled(true); } }
Blok statementdiatas merupakan method pada checkbox1 dimana apabila
checkbox1 dipilih atau di-checked, properti enable checkbox lain akan bernilai
false dan true untuk properti enable button dengan perintah setEnabled. Jika
checkbox1 tidak dipilih atau di-unchecked maka properti enable button bernilai
false dan true untuk properti enable checkbox yang lain. Begitupun untuk reaksi
checkboxlain, tidak jauh berbeda.
3.5.3. Pembuatan Tampilan Help
Tampilan about merupakan tampilan yang akan ditampilkan apabila memilih About pada menubar Help. Tampilan ini menggunakan classAction dari paket org.jdesktop.application dan paket class swing, yaitu: JLabel dan JButton. Terdiri dari method CareRegAboutBox(java.awt.Frame parent), closeAboutBox(), dan initComponents().
Tampilan ini menampilkan keterangan dari aplikasi berupa deskripsi aplikasi dan cara penggunaan aplikasi yang dibuat pada class CareRegHelpBox. Perhatikan potongan source codeberikut,
public class CareRegHelpBox extends javax.swing.JDialog { … }
Properti
Hari
33
Blok statement diatas merupakan pendeklarasian dari class
CareRegHelpBox yang merupakan class turunan dari class javax.swing.JDialog. Pada class ini ditambahkan beberapa label sebagai keterangan yang akan ditampilkan dan sebuah button bertuliskan “Close” yang digunakan untuk menutup tampilan ini.
Pada class ini terdapat sebuah method konstruktor yang berfungsi memanggil method lainnya. Perhatika source codeberikut,
public CareRegHelpBox(java.awt.Frame parent) {
super(parent); initComponents();
getRootPane().setDefaultButton(jButton1);
}
Pada method diatas, terdapat perintah super(parent) yang berfungsi untuk mentapatkan nama dari parent dan dijadikan judul dari frame about. initComponent() digunakan untuk memanggil method initComponent() yang menampilkan keterangan, dan buttondiatur untuk menutup tampilan ini.
Method closeAboutBox() { dispose(); } digunakan untuk menutup tampilan ini apabila close icon dipilih. Method initComponent(){ … } digunakan untuk mendapatkan informasi dan mengatur layout tampilan about.
3.5.4. Pembuatan Tampilan About
Tampilan about merupakan tampilan yang akan ditampilkan apabila memilih About pada menubar Help. Tampilan ini menggunakan classAction dari paket org.jdesktop.application dan paket class swing, yaitu: JLabel dan JButton. Terdiri dari method CareRegAboutBox(java.awt.Frame parent), closeAboutBox(), dan initComponents().
Tampilan ini menampilkan keterangan dari aplikasi berupa nama aplikasi, deskripsi aplikasi, vendor, desainer, homepage, dan email dari pembuat yang dibuat pada class CareRegAboutBox. Perhatikan potongan source codeberikut,
Properti
Hari
34
public class CareRegAboutBox extends javax.swing.JDialog { … }
Blok statement diatas merupakan pendeklarasian dari class
CareRegAboutBox yang merupakan class turunan dari classjavax.swing.JDialog. Pada class ini ditambahkan beberapa label sebagai keterangan yang akan ditampilkan dan sebuah button bertuliskan “Close” yang digunakan untuk menutup tampilan ini.
Pada class ini terdapat sebuah method konstruktor yang berfungsi memanggil method lainnya. Perhatika source codeberikut,
public CareRegAboutBox(java.awt.Frame parent) { super(parent);
initComponents();
getRootPane().setDefaultButton(closeButton); }
Pada method diatas, terdapat perintah super(parent) yang berfungsi untuk mentapatkan nama dari parent dan dijadikan judul dari frame about. initComponent() digunakan untuk memanggil method initComponent() yang menampilkan keterangan, dan buttondiatur untuk menutup tampilan ini.
Method closeAboutBox() { dispose(); } digunakan untuk menutup tampilan ini apabila close icon dipilih. Method initComponent(){ … } digunakan untuk mendapatkan informasi dan mengatur layout tampilan about.
3.6. Tahap Uji Coba
Tahap ini merupakan tahap akhir dari pembuatan aplikasi dengan melakukan pengujian dengan mengklik menu Run lalu Run Main Project atau menekan F6 pada keyboard. Sebelum program di-builddan di-run, terlebih dahulu meng-import dua buah file tambahan sebagai library dari program, yaitu: jRegistryKey.dll yang merupakan file system yang mendukung aplikasi agar aplikasi dapat mengakses registry dan jRegistryKey.jar yang merupakan java
librarytambahan yang berisi fungsi – fungsi registry.
Properti
Hari
35
File jRegistrykey.dll ditaruh di folder C:\Windows\System32 dan untuk file jRegistryKey.jar ditaruh pada folder lib project dengan cara meng-import file tersebut melalui properti project pada NetBeans IDE 6.8. Setelah dua filetersebut berhasil di-import, barulah program bisa di-build. Pada saat memilih menu run, program di-buildsecara otomatis untuk mendapatkan fileeksekusi berupa jar yang tersimpan pada folder dist project. Tampilan aplikasi pada saat dijalankan dapat dilihat pada gambar di bawah ini.
Gambar 3.7 Tampilan Menu Fungsi Registry
Tampilan yang akan pertama kali dilihat oleh user apabila file eksekusi aplikasi dipilih dan dijalankan dari folder explorer, terdiri dari menu bar,
checkbox dengan keterangan yang dapat dipilih, dan tombol “OK” yang diatur properti enable-nya bernilai false.
Properti
Hari
36
Gambar 3.8 Tampilan Checkbox Dipilih
Tampilan apabila salah satu checkboxdipilih yang mengakibatkan properti
enable dari checkbox lainnya bernilai false yang dimaksudkan aplikasi ini hanya dapat menjalankan satu perintah dari checkbox dan enable dari tombol OK bernilai trueuntuk mengeksekusi aplikasi.
Gambar 3.9 Tampilan Pesan yang Muncul
Merupakan tampilan messageDialogBox yang dihasilkan oleh koding menggunakan paket java Swing yaitu JoptionPane yang memberikan sebuah keterangan dengan teks apabila salah satu checkbox dipilih dan menekan tombol ok. Keterangan tersebut adalah teks “Value Change Success” dan “[CheckBox.Name] has been Enabled/Disabled”.
Properti
Hari
37
Gambar 3.10 Tampilan Help
Merupakan tampilan yang akan ditampilkan apabila memilih menu bar Help lalu Tutorial. Tampilan ini terdiri dari beberap label yang memberikan keterangan seperti yang tertulis pada gambar 3.25 diatas. Sebuah tombol bertuliskan “Close” berfungsi untuk menutup tampilan ini dan menu fungsi
registrykembali aktif.
Gambar 3.11 Tampilan About
Merupakan tampilan yang akan ditampilkan apabila memilih menu bar Help lalu About. Tampilan ini terdiri dari beberapa label yang memberikan keterangam seperti: nama aplikasi, deskripsi aplikasi, versi aplikasi, desainer, vendor, homepage, dan email. Sebuah tombol bertuliskan “Close” berfungsi untuk menutup tampilan ini dan menu fungsi registrykembali aktif.