VISUAL BASIC
2005
Jasakom
http://www.Jasakom.com/Penerbitan
S'to
Kitab Suci Programmer : Visual Basic 2005
ISBN : 978-979-1090-05-6
Publisher Contact
Jasakom PO Box 6179 JKB
Fax : 021-56957634
Web Site HP : 0888-1911091
http://www.jasakom.com/penerbitan
Cover Design & Idea & Layout
Email S'to
admin@jasakom.com
1. Barang siapa dengan sengaja dan tanpa hak melakukan kegiatan sebagaimana dimaksud dalam pasal 2 ayat
(1) atau pasal 49 ayat (1) dan ayat (2) dipidana dengan pidana penjara paling singkat 1 (satu) bulan dan/atau
denda paling sedikit Rp. 1.000.000 (satu juta rupiah) atau pidana penjara paling lama 7 (tujuh) tahun dan/
atau denda paling banyak Rp. 5.000.000.000.00 (lima miliar rupiah).
2. Barang siapa dengan sengaja menyiarkan, memamerkan, mengedarkan, atau menjual kepada umum suatu
Ciptaan atau barang hasil pelanggaran Hak Cipta atau Hak Terkait sebagaimana dimaksud pada ayat (1), dipi-
dana dengan pidana penjara paling lama 5 (lima) tahun dan/atau denda paling banyak Rp. 500.000.000,00
(lima ratus juta rupiah)
Kata Pengantar
Visual Basic merupakan bahasa pemrograman yang sangat populer
dan digunakan oleh jutaan orang didunia ini. Keberhasilan terbesar
bisa dikatakan terjadi ketika Visual Basic mencapai versi 6.
Keberhasilan ini sangat terasa, bahkan sampai detik ini. Ketika saya
jalan-jalan ke toko buku, masih banyak penulis yang menulis tentang
pemrograman Visual Basic 6, padahal versi terbarunya sudah muncul
dan featurenya sangat-sangat pantas untuk menggantikan Visual Basic
6. Visual Basic 2005 bisa dikatakan sebagai Visual Basic 6 killer.
Saya berharap, buku ini bisa menuntun Anda melalui "Jalan yang
benar" untuk memulai programming dengan Visual Basic 2005. Buku
ini sangat jauh dari lengkap dan hanya membahas kulit dari Visual Ba-
sic. Anda tetap membutuhkan referensi lain, baik buku, web site, artikel
serta sumber-sumber lainnya atau Anda bisa menunggu buku saya
selanjutnya mengenai programming ini jika buku ini bisa memuaskan
pembaca tentunya.
Akhir kata, semoga buku ini berguna bagi Anda semua dan juga bagi
nusa, bangsa, negara, dunia dan akhirat, baik surga maupun neraka.
Amin.
S 'to
email : sto@jasakom.com
http://www.jasakom.com/sto
CD Jasakom E-Learning
Daftar Isi
BAB 01. NET .NET .NET 13
Kompabilitas Antar Bahasa 14
Apa itu .NET Framework ? 14
Apa yang ditawarkan oleh .NET Framework 17
Managed dan Unmanaged Code 18
Neraka DLL 19
Bab 06.Namespace 97
Menggunakan Namespace 98
Perintah imports 101
Global Imports 102
File Assembly Namespace 104
T
IME OUT !! TIME OUT !! Ok, dengan sangat berat hati perlu
Anda ketahui bahwa bahasa pemrograman pengganti telah
hadir. Anda bisa mengganti atau setidaknya harus bersiap-siap
mengganti si tua Visual Basic 6 Anda dengan bahasa pemrograman
Visual Basic terbaru dari Microsoft, Visual Basic 2005. Kenapa saya
mengatakan upgrade dari VB 6 ke VB 2005, bukannya VB.NET 2002
atau VB.NET 2003 ke VB 2005 ? karena VB 6 adalah produk yang
dikeluarkan pada tahun 1998 dan menuai sukses paling besar sampai
sekarang.
Ada banyak alasan kenapa sudah waktunya bagi Anda untuk
mengganti ke versi terbaru ini. Masalah utama yang terjadi bukanlah
karena Microsoft sudah tidak mendukung Visual Basic 6 lagi karena
Visual Basic 6 sudah terbukti handal. Bukan juga karena Visual Basic
2005 sudah mengadopsi OOP secara penuh karena sudah terbukti
banyak yang bertambah bingung dengan adanya OOP.
Pergantian ke Visual Basic 2005 lebih dikarenakan bahasa pemrograman
ini akan membantu Anda membangun aplikasi dengan cara yang
lebih mudah dan cepat dalam hal perancangan layar, integrasi antar
bahasa pemrograman, pembuatan aplikasi internet, aplikasi mobile,
aplikasi dengan teknologi terkini dan lain sebagainya (ya, saya sudah
membuktikannya dan saya bukan staff marketing Microsoft !).
Anda sudah mendengar kabar baiknya, sekarang waktunya untuk
mendengar kabar buruk.
13
Jasakom
BAB 01. NET .NET .NET
Visual Basic 2005 adalah bahasa baru dengan gaya lama. Akibat
dari perubahan yang termasuk revolusioner ini, tahapan belajarpun
menjadi tidak semudah membalikkan telapak tangan. Terdapat banyak
sekali perubahan gaya pemrograman, perubahan type variable sampai
dengan perubahan pola pikir yang akan saya focuskan pada buku ini.
File dengan extensi .exe adalah file yang bisa dieksekusi secara
langsung karena berisi bahasa mesin yang memerintahkan CPU untuk
melakukan tugas-tugas tertentu. Ketika Anda menjalankan program
.exe yang dibuat dengan bahasa .NET, mesin menjadi bingung karena
walaupun ber-ektensi .exe, ternyata bahasa didalamnya tidak dipahami
oleh mesin, sehingga komputer akan menampilkan "Application
Error".
Hal ini terjadi karena program .exe yang dibuat dengan bahasa .NET
sebenarnya bukanlah bahasa mesin umum yang dikenal selama
ini. Bahasa mesin (assembly) yang dihasilkan oleh kompiler .NET
dinamakan sebagai "Intermediate Language (IL)". Kenapa dinamakan
sebagai bahasa mesin (Assembly) ? Bukankah assembly artinya bahasa
yang dimengerti oleh mesin ?
IL memang bahasa mesin namun bukan bahasa mesin untuk CPU
nyata, melainkan bahasa mesin untuk CPU Virtual yang diciptakan
oleh Microsoft. Jadi hanya CPU Virtual inilah yang memahami apa
maunya program .exe yang telah dibuat oleh bahasa .NET.
15
Jasakom
BAB 01. NET .NET .NET
CPU Virtual ini diciptakan oleh program .NET Framework. Pada
sistem operasi Windows Vista, .NET Framework versi 3.0 sudah secara
otomatis tersedia namun untuk sistem operasi sebelumnya seperti
Windows XP, 2000, dkk, Anda harus menginstall .NET Framework
ini.
Anda bisa menginstall .NET Framework versi 2.0 dengan
mendownload dan menginstall file dotnetfx.exe yang berukuran 22.4
MB di situs Microsoft http://www.Microsoft.com/downloads/details.
aspx?familyid=0856eacb-4362-4b0d-8edd-aab15c5e04f5&displaylang=
en.
Salah satu tugas dari .NET Framework ini adalah menerjemahkan
perintah-perintah dalam bahasa IL menjadi bahasa assembly murni
yang bisa dijalankan oleh CPU yang sebenarnya. Jika digambarkan,
.NET Framework merupakan sebuah layer yang berada ditengah-
tengah antara aplikasi yang dibuat dengan .NET dan Sistem operasi
windows seperti berikut :
16
Jasakom
BAB 01. NET .NET .NET
Saya tidak paham, kenapa Microsoft tidak membuat extention
yang baru untuk program yang dibuat dengan bahasa .NET dan
tidak menggunakan extention .exe yang sudah ada agar tidak
membingungkan.
Yang perlu Anda perhatikan disini adalah, aplikasi yang Anda bangun
nantinya membutuhkan .NET Framework, karena itu semua komputer
windows XP yang hendak menggunakan aplikasi Anda, harus
menginstall .NET Framework atau aplikasi Anda tidak bisa dijalankan.
Repot memang dan ini adalah kerepotan terbesar dari aplikasi .NET
saat ini.
17
Jasakom
BAB 01. NET .NET .NET
• Andaikan persaingan sistem operasi di masa depan dimenangkan
oleh Linux, Microsoft masih mempunyai senjata pamungkas yang
lain yaitu semua aplikasi dibangun diatas .NET Framework yang di
miliki olehnya.
18
Jasakom
BAB 01. NET .NET .NET
Neraka DLL
Neraka DLL atau DLL Hell, sangat terkenal di kalangan pengguna
Windows. Jika Anda pernah menginstall aplikasi games yang
menyebabkan MS Office Anda menjadi tidak bekerja, atau bahkan
menyebabkan Windows Anda menjadi ngaco, maka salah satu sebabnya
adalah apa yang dinamakan sebagai DLL Hell (neraka DLL).
Fungsi file DLL yang sangat diagung-agungkan adalah penggunaan
bersama. Artinya sebuah file DLL (misalnya komponen.dll) bisa
digunakan oleh beberapa program. Dengan penggunaan bersama ini,
artinya Anda akan menghemat harddisk (karena hanya dibutuhkan
1 file) dan Anda akan menghemat memory (karena hanya 1 file DLL
yang dijalankan walaupun Anda menjalankan beberapa program
sekaligus).
Semuanya tampaknya sangat indah sampai Anda menyadari bahwa
ternyata program yang baru di install, mengganti file DLL yang
digunakan bersama dengan versi yang lebih lama. Pergantian file DLL
dengan versi yang lebih lama ini, sudah tidak perlu dijelaskan lagi
karena sudah pasti akan menyebabkan aplikasi lain yang menggunakan
file DLL ini menjadi error atau menjadi berantakan kerjanya.
Pembaharuan atau update file DLL ke versi yang lebih baru tidak lebih
baik ceritanya. Versi yang lebih baru tidak selalu kompatible dengan
versi yang lebih lama. Anda tentu pernah merasakan bagaimana
Microsoft Office versi lama tidak bisa membuka file Microsoft Office
versi yang baru.
Hal yang sama terjadi disini. Ketika program yang baru di install dengan
entengnya mengganti file DLL ke versi yang lebih baru, program lain
yang membutuhkan DLL versi yang lebih lama tanpa disadari menjadi
bermasalah dan tidak bisa dijalankan.
Terkadang tampak sangat aneh, kenapa pergantian sebuah DLL ke
versi yang lebih baru bisa menimbulkan sebuah masalah. Bukankah
sebuah versi yang lebih baru artinya sebuah perbaikan ? Tidak juga.
Terkadang, sebuah perbaikan ternyata menimbulkan permasalahan
ditempat lain.
19
Jasakom
BAB 01. NET .NET .NET
Selain itu, ada juga program-program yang menggunakan fungsi-
fungsi "undocumented" atau fungsi-fungsi tidak "resmi" di dalam
sebuah DLL. Ketika DLL di upgrade ke versi yang lebih baru, fungsi
"undocumented" ini dihilangkan, akibatnya program yang tergantung
dengan fungsi tersebut menjadi tidak bisa dijalankan lagi.
Kini, Microsoft mencoba mengatasi permasalahan ini dengan teknologi
.NET(http://msdn.Microsoft.com/library/default.asp?url=/library/
en-us/dndotnet/html/dplywithnet.asp). Alasannya, saat ini harddisk
sudah murah dan memory juga sudah murah (apa katamu deh Bill).
Caranya adalah, aplikasi yang Anda bangun dengan .NET akan
menyimpan informasi tentang file-file yang dibutuhkan beserta
versi-versinya. .NET Framework sekarang juga bisa menangani dan
menyimpan file-file dengan nama yang sama namun dengan versi
yang berbeda-beda dalam sebuah komputer.
Dengan demikian, program .NET bisa menggunakan file DLL dengan
versi spesifik sehingga update yang terjadi, tidak akan merusak
atau menimpa file yang sudah terbukti bagus digunakan oleh suatu
aplikasi. Dengan cara seperti ini pula, Anda bisa menghilangkan proses
instalasi aplikasi atau program dan menggunakan cara yang sangat
menyenangkan di jaman DOS dulu.
Anda tinggal mengcopy seluruh direktory program Anda dan
menjalankannya di komputer lain. Cara ini dinamakan sebagai sistem
XCOPY (xcopy adalah perintah di dalam DOS yang akan mengcopy
seluruh file dan direktory dari suatu tempat ke tempat lainnya). Benar-
benar kenangan lama yang kembali bersemi.
20
Jasakom
BAB 02. Visual Basic 2005, Action !
BAB 02
Visual Basic 2005, Action !
P
ada buku ini, saya menggunakan Visual Studio 2005 Profesional
Edition, namun Anda juga bisa menggunakan versi-versi
yang lain dari Visual Studio 2005. Saya tidak tidak membahas
tentang instalasi Visual Studio 2005 ini karena saya yakin bahwa setiap
orang sudah berhak menyandang predikat MCSI (Microsoft Certified
Software Installer) karena mudahnya proses instalasi produk-produk
Microsoft.
Saya juga tidak membahas tentang versi-versi beserta perbedaan
diantara versi-versi Visual Studio karena ingin lebih berkonsentrasi
pada penggunaan Visual Studio ini. Anda bisa melihat berbagai
perbedaan yang ada untuk masing-masing versi Visual Studio dan
juga berbagai informasi lainnya pada situs Microsoft.
21
Jasakom
BAB 02. Visual Basic 2005, Action !
Start Page
Selesai instalasi, jalankan Visual Studio 2005. Anda akan mendapatkan
layar pertama seperti gambar 2.1 di bawah ini :
Tampilan awal yang dinamakan "Start Page" ini cukup menarik karena
Anda akan langsung disajikan berita-berita terkini tentang .NET (2)
yang diambil dari situs msdn yang akan diupdate setiap 60 menit.
Tentunya hal ini hanya bisa terjadi apabila Anda sedang terkoneksi ke
Internet.
Untuk merubah ataupun mengetahui sumber informasi dari Start Page
ini, bisa Anda lakukan melalui menu ToolsaOptionsaaktifkan "Show
all settings" aEnvironmentaStartup (Gambar 2.2).
22
Jasakom
BAB 02. Visual Basic 2005, Action !
Gambar 2.2.
Menu options
pada Visual
Studio 2005
Terlihat dari menu Options ini, bahwa halaman startup akan diambil
dari URL http://go.Microsoft.com/fwlink/?linkid=45331&clcid=409.
Jika Anda browse ke situs ini, Anda akan melihat bahwa URL ini
secara otomatis akan membawa Anda ke URL http://msdn.Microsoft.
com/vbasic/rss.xml.
Pada Startup Page ini, Anda juga bisa melihat project-project yang
pernah dibuka atau dibuat sebelumnya pada bagian "Recent Projects"
yang terletak di sebelah kiri atas (1).
23
Jasakom
BAB 02. Visual Basic 2005, Action !
Memulai Project
Untuk memulai membangun aplikasi dengan Visual Studio 2005, klik
menu FileaNew Project atau tekan tombol Ctrl+N. Pada kolom Project
Types, pilih Visual BasicaWindows.
Anda akan diberikan berbagai pilihan template yang terbagi menjadi
4 bagian "Project Types" yaitu Windows, Smart Device, Database dan
Starter Kits. Pada bagian Windows, Anda akan melihat template-
template yang tersedia seperti Windows Application yang akan kita
fokuskan pada buku ini, Class Library, Windows Control, dan lain
sebagainya (gambar 2.3).
Gambar 2.3. Template
24
Jasakom
BAB 02. Visual Basic 2005, Action !
[JenisTemplate] adalah direktory dengan nama berdasarkan jenis
templatenya seperti Templates, ProjectTemplates, ItemTemplates dan
SolutionTemplates. Jika Anda penasaran dengan angka 1033 pada
setiap direktory yang digunakan oleh Visual Studio, angka tersebut
sebenarnya menunjukkan versi internasional yang digunakan, dimana
1033 menunjukkan Visual Studio versi bahasa inggris.
Di dalam direktory ini, Anda bisa melihat lagi struktur direktory seperti
Database, SmartDevice, Starter Kits, Windows dan hei… bukankah
struktur direktory ini persis sama dengan pembagian "Project Types"?
Template bertugas menyiapkan environment (lingkungan) yang Anda
25
Jasakom
BAB 02. Visual Basic 2005, Action !
perlu terlalu pusing dengan "harus memilih template yang mana" !
Pada buku ini, saya akan selalu menggunakan template "Windows
Application" kecuali dinyatakan lain. Pada form pemilihan template
ini, Anda juga diminta untuk memasukkan nama aplikasi yang
secara default terisi dengan "WindowsApplication1". Anda bisa
mengabaikannya saat ini. Selanjutnya, klik tombol OK untuk memulai
project baru.
Jika Anda orang yang kritis, tentunya Anda akan bertanya "kenapa
hanya diminta untuk memasukkan nama project dan tidak ada lokasi
tempat project tersebut ? disimpan dimanakah project yang kita buat ?"
Visual Studio 2005 menggunakan pendekatan yang berbeda mengenai
hal ini dan saya sangat setuju dengannya.
Jika Anda adalah programmer, tentunya Anda bisa memahami betapa
seringnya kita membuat aplikasi hanya sekedar mencoba beberapa
baris code. Setelah selesai mencoba, code-code tersebut sudah tidak
lagi dibutuhkan dan Anda bisa menghapus file-file yang tercipta di
dalam harddisk. Berapa kali Anda melakukan hal semacam ini ? saya
sangat-sangat sering melakukannya.
Kini Anda tidak perlu lagi berpusing ria selalu memberikan nama
untuk program yang hanya untuk coba-coba ini. Visual Studio secara
default, akan menyimpan semua file-file yang Anda buat ke folder
sementara (folder temporary) yang berada di C:\Documents and
Settings\[Nama User, contoh S'to]\Local Settings\Application Data\
Temporary Projects.
Setelah Anda memutuskan untuk benar-benar menyimpan project
yang sedang Anda bangun ini, barulah Visual Studio akan menanyakan
kepada Anda nama program dan lokasi dimana Anda hendak
menyimpannya. Saya akan membahasnya lebih lanjut pada bab ini.
26
Jasakom
BAB 02. Visual Basic 2005, Action !
Bagi Anda pemakai VB 6, tentunya tidak akan terlalu asing dengan
tampilan IDE semacam ini. Namun tidak terlalu asing tidak berarti
Anda bisa menggunakan IDE ini tanpa masalah.
27
Jasakom
BAB 02. Visual Basic 2005, Action !
Membutuhkan terlalu banyak halaman hanya untuk membicarakan
tentang auto hide, dock dan lain sebagainya. Untuk itu, fasilitas ini
akan saya demokan dalam bentuk video yang terdapat di dalam CD E-
Learning yang disertakan bersama buku ini sehingga Anda tidak perlu
membayangkan tentang apa yang saya bicarakan.
Membuat program dengan Visual Basic bisa dibagi menjadi 2 tahap yaitu
tahap design dan tahap coding. Pada tahap design, Anda menggambar
bentuk atau tampilan program misalnya dengan menambahkan tombol
yang bisa diklik, menambahkan menu, menambahkan gambar dan lain
sebagainya tanpa perlu menggunakan coding.
Tahapan berikutnya adalah tahapan coding dimana Anda akan
memberikan code, tentang apa yang harus dikerjakan oleh program
apabila tombol yang Anda design tadi diklik, apa yang harus
dikerjakan oleh program apabila menu yang Anda design dipilih dan
lain sebagainya.
Tahap 1-Design
Pada tahapan design ini, Anda "menggambar" bentuk atau tampilan
untuk program yang akan Anda buat. Umumnya proses "menggambar"
ini dilakukan dengan mengklik dan drag control-control yang ada di
dalam Toolbox ke dalam Form.
Walaupun Anda bisa juga melakukan langkah ini melalui coding,
namun hal ini sangat jarang dilakukan kecuali untuk kasus-kasus
tertentu misalnya Anda membuat program yang bisa menampilkan
button dengan jumlah yang tidak terbatas. Untuk contoh kali ini, klik
tombol Button pada Toolbox, tahan dan geser ke form Anda (1).
Selanjutnya, Anda bisa menentukan karakteristik dari sebuah object
atau Button dalam contoh ini melalui "Properties windows". Pada
properties windows, Anda bisa merubah karakteristik dari sebuah
button seperti tulisan diatas control tersebut (properti text), bentuk
tulisan yang digunakan (properties font), warna tombol (properti
backcolor dan forecolor), nama (properties name) dan lain sebagainya.
(Gambar 2.6)
28
Jasakom
BAB 02. Visual Basic 2005, Action !
30
Jasakom
BAB 02. Visual Basic 2005, Action !
dengan mouse maupun keyboard. Event handler default dari sebuah
form adalah event load yang dijalankan ketika sebuah form dimuat ke
dalam memory sebelum ditampilkan ke layar.
Saya akan membicarakan lebih lanjut tentang event, event handler dan
method pada bab selanjutnya, jadi jangan khawatir jika Anda belum
memahami apa yang saya katakan saat ini
Gambar 2.8.
Form Coding
Untuk kali ini, klik dua kali pada control button yang akan membawa
Anda ke modus coding. Visual Studio secara otomatis akan menciptakan
beberapa baris code yang siap untuk digunakan seperti berikut :
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
End Sub
End Class
31
Jasakom
BAB 02. Visual Basic 2005, Action !
Kini, Anda bisa memasukkan kode di dalam prosedur yang telah
disiapkan ini. Saya akan memasukkan perintah untuk menampilkan
sebuah messagebox dengan perintah :
32
Jasakom
BAB 02. Visual Basic 2005, Action !
Pada kolom Location, Anda menentukan lokasi direktory yang akan
Anda gunakan untuk menyimpan hasil kerja Anda. Nantinya, file-file
kerja Anda yang sebelumnya disimpan pada direktory temporary di
C:\Documents and Settings\S'to\Local Settings\Application Data\
Temporary Projects\ akan dipindahkan ke lokasi yang Anda tentukan
ini. Disini, yang agak membingungkan adalah kolom isian Name dan
Solution Name.
"Name" diisi dengan nama project sedangkan "Solution Name" diisi
dengan nama solusi. Lalu apa bedanya solusi dan project ? Sebuah
solution, bisa terdiri atas satu atau beberapa project, dengan kata lain
solution terdiri atas project-project.
Setelah Anda mengklik tombol save, sebuah direktory akan dibuat
berdasarkan nama solusi. Misalnya saya mengisi kolom Name dengan
"Namaproject" dan Solution Name dengan "Namasolusi", maka akan
terbentuk sebuah direktory dengan nama "NamaSolusi".
Di dalam direktory NamaSolusi ini, Anda akan mendapatkan 2 file
yaitu file dengan extention .sln dan file dengan extention .sou.
File .sln yang menggunakan icon
bergambar angka 8 ini (karena
Visual Basic 2005 sebenarnya
adalah Visual Basic versi 8)
merupakan file text yang bisa Anda
buka dengan notepad.
File ini berisi informasi tentang semua project-project yang terkandung
dalam sebuah solusi dan juga informasi atau setting yang digunakan
untuk melakukan proses kompilasi seperti informasi tentang jenis CPU
dan lain sebagainya.
Berbeda dengan file .sln, file .suo merupakan file biner yang digunakan
untuk menyimpan data tampilan solusi, setting windows, breakpoint,
dan informasi IDE lainnya pada sebuah solusi. Karena disimpan dalam
bentuk biner, Anda tidak bisa membuka file ini dengan text editor
seperti notepad.
File ini secara default juga akan disembunyikan sehingga untuk
melihatnya, Anda perlu mengaktifkan pilihan untuk melihat
hidden file pada windows explorer melalui menu ToolsaFolder
33
Jasakom
BAB 02. Visual Basic 2005, Action !
Solution Explorer
Ketika membuat program, biasanya terdapat dokumen-dokumen
yang berhubungan dengan project yang sedang dikerjakan. Misal-
nya, saya biasa membuat aturan-aturan pemrograman dalam se-
buah file, kemudian saya juga mempunyai file-file hasil meeting,
foto-foto lingkungan kerja operator, dan berbagai file penting lain-
nya.
Apa yang saya lakukan adalah menyimpan semua file ini ke dalam
sebuah direktory dan mencarinya ketika dibutuhkan. Ini adalah
pengorganisasian paling efisien yang
bisa saya lakukan sebelum adanya
Solution Explorer.
Dengan Solution Explorer, pengorga-
nisasian file-file ini bisa lebih rapih dan
memudahkan kita untuk melihatnya.
Solution Explorer dalam lingkungan
IDE Visual Studio tidak hanya berisi
file-file project namun Anda bisa me-
masukkan file apa saja ke dalamnya
seperti file Microsoft word, file gambar
bitmap, file teks dan lain sebagainya.
Anda juga bisa mengelompokkannya
ke dalam folder-folder.
Caranya sangat mudah, Anda tinggal mengklik kanan pada nama
project kemudian pilih menu Add a Existing Item.
File-file yang tidak berhubungan langsung dengan program Anda
ini, tidak akan ikut di-compile atau dimasukkan ke dalam program
Anda sehingga tidak akan mempengaruhi kinerja program Anda
nantinya.
Ketika Anda membutuhkan dokumen hasil meeting, Anda tinggal
mengklik file tersebut dari Solution Explorer untuk membukanya.
Sebuah interface yang sangat inovatif, sederhana namun sangat
berguna.
34
Jasakom
BAB 02. Visual Basic 2005, Action !
OptionsaViewaAdvanced SettingsaFile and FoldersaHidden files
and foldersaShow hidden files and folders
Konsep pembagian
semacam ini akan
memudahkan Anda
ketika hendak
membuat sebuah
aplikasi yang besar. Misalnya Anda ingin membuat sebuah sistem
komputerisasi untuk sebuah perusahaan. Anda bisa membuat sebuah
solusi yang terdiri atas 6 project yaitu project penjualan, piutang,
pembelian, hutang, stock dan accounting.
Kemudahan yang Anda dapatkan nantinya adalah Anda bisa
melakukan kompilasi terhadap project tertentu saja dan bukan semua
project, Anda juga bisa memperlakukan masing-masing project sebagai
sebuah unit yang terpisah sehingga membangun sebuah sistem yang
besar bisa menjadi lebih sederhana.
Kembali lagi ke direktory yang terbentuk untuk solusi. Di dalam
direktory solusi, terbentuk juga direktory untuk masing-masing project
yang terdapat di dalam sebuah solusi.
Karena pada contoh ini kita hanya mempunyai satu project dalam satu
solusi, maka Anda hanya akan melihat sebuah direktory dengan nama
NamaProject. Apabila
Anda mempunyai lebih
dari satu project disini,
maka Anda akan melihat
Gambar 2.10. Solution dan Project
masing-masing project
dengan direktorynya
masing-masing.
File project menggunakan
extention .vbproj dan berisi
text dengan format XML.
Di dalam file ini, Anda
akan menemukan berbagai
setting yang digunakan
oleh sebuah project seperti
form dan file-file modules
yang berextention .vb.
35
Jasakom
BAB 02. Visual Basic 2005, Action !
36
Jasakom
BAB 02. Visual Basic 2005, Action !
Perhatikan gambar 2.10 untuk memahami pengelompokan file dan juga
perbedaan antara solusi dan project (bagi yang senang berimajinasi,
gambar diatas memang menjadi gambar muka manusia yang sedang
mabuk).
Jika solusi yang Anda bangun hanya berisi sebuah project, Anda bisa
membuka file solusi (.sln) ataupun membuka file projectnya secara
langsung (.vbproj).
37
Jasakom
BAB 02. Visual Basic 2005, Action !
Apa sih XML itu ?
XML menjadi trend belakangan ini karena fleksibilitas dan kemam-
puannya untuk digunakan oleh platform apa saja. Namun, banyak
yang bingung dengan berbagai deskripsi tentang apa sebenarnya
XML. Apakah Anda bingung dengan apa itu "database" ? saya yakin
tidak, karena Anda sudah melihat dan menggunakannya sepanjang
waktu.
Anda tidak bisa membuka file database access, database SQL
Server ataupun database yang dibuat dengan Oracle dengan note-
pad. Tentu saja, untuk membaca database-database ini dibutuhkan
programnya masing-masing dan Anda membutuhkan "engine" atau
driver khusus agar program Anda mengenali dan bisa membaca
data didalamnya.
XML adalah database dengan format teks ! Dengan format teks
ini, memudahkan database XML dibaca oleh semua program dan
memudahkan komputer-komputer yang berbeda saling menukar
data baik jaringan lokal maupun jaringan global seperti internet.
38
Jasakom
BAB 02. Visual Basic 2005, Action !
kesalahan-kesalahan yang ada di dalam program. Karena itu pada
tahap ini, proses kompilasi tidak akan melakukan optimasi agar
program hasil compilasi menjadi cepat, malahan hasil compile ini akan
lebih besar dan tidak efisien karena ditambahkan berbagai informasi
untuk kebutuhan "coba-coba" ini.
Contohnya, debug mode menambahkan informasi mengenai source
code sehingga apabila terdapat error, Visual Studio bisa menunjukkan
kepada Anda baris keberapa yang menyebabkan error tersebut.
Kompilasi dengan debug mode juga akan menciptakan file khusus
untuk kebutuhan debugging ini yang ber-ekstensi .pdb.
Pada saat Anda hendak mendistribusikan program yang Anda buat
ke pengguna, maka yang Anda pentingkan adalah program yang
cepat dan efisien. Program semacam ini akan Anda dapatkan dengan
melakukan kompilasi dengan Release Mode yang dilakukan dengan
memilih menu "BuildaBuild NamaProgram". Hasil kompilasi ini akan
disimpan ke dalam direktory /bin/Release.
39
Jasakom
BAB 02. Visual Basic 2005, Action !
Program aplikasi .NET dikompile dengan cara yang berbeda, walaupun
file yang dihasilkan adalah file dengan extention .exe, namun isinya
bukanlah bahasa mesin yang siap dijalankan. File exe hasil kompilasi
Visual Studio 2005 berupa bahasa mesin yang hanya dimengerti oleh
.NET Framework sebagai orang tengah yang akan menerjemahkannya
kedalam bahasa mesin asli yang bisa dimengerti oleh komputer.
File .exe jenis baru ini tidak hanya berisi perintah namun juga berisi
informasi seperti informasi mengenai file-file yang dibutuhkan oleh
program agar bisa dijalankan dengan mulus.
Dengan struktur baru ini, file exe yang dibuat dengan teknologi .Net
akhirnya tidak membutuhkan proses registrasi DLL. Pendistribusian
program juga bisa menjadi sederhana dan mudah, seperti jaman DOS
dulu. Anda bisa mengcopy file exe dan seluruh file pendukung yang
terdapat pada direktory /bin/Release ke komputer lain.
Cara demikian sering dinamakan sebagai XCOPY. Jika program sudah
tidak digunakan ? hapus saja seluruh direktory tersebut, Anda tidak
perlu meng-uninstallnya sama sekali (Program semacam ini sedang
trend karena bisa dicopy dan dijalankan melalui flash disk)
Jika Anda adalah pengguna sistem operasi DOS seperti saya dulu,
perintah ini tidak akan asing buat Anda. Perintah XCOPY adalah
perintah untuk mengcopy sebuah direktory beserta semua isinya ke
tempat lain.
Lalu bagaimana jika Anda ingin membuat program yang tampak seperti
program profesional lainnya ? user tinggal menjalankan program
setup, next, next, finish. Lalu tercipta icon program di desktop ? Ketika
program hendak dibuang, tinggal masuk ke control panel, kemudian
pilih uninstall ! Atau program Anda perlu memasukkan beberapa entry
ke dalam registry. Masih bisakah ? tentu saja ! Tidak semua kondisi
cocok dengan pendistribusian menggunakan metode XCOPY. Anda
tetap bisa membuat program installer seperti biasa bila dibutuhkan.
Selain pembuatan program Installer, Visual Studio 2005 juga
memungkinkan Anda menggunakan teknologi baru yang dinamakan
sebagai ClickOnce dengan wizard yang sangat mudah. Dengan teknologi
ini, Anda bisa membuat program yang bisa diinstall dan di update
melalui web site atau internet dengan mudah. Menarik bukan ?
40
Jasakom
BAB 02. Visual Basic 2005, Action !
Melihat "Isi Hati" Program, HACK IT !
Seperti yang telah saya katakan sebelumnya, hasil kompilasi yang
Anda lakukan ini akan membuat file .exe dengan format bahasa yang
hanya dikenal oleh .Net Framework. Bahasa ini dinamakan sebagai IL
(Intermediate Language) dan terkadang juga dinamakan sebagai MSIL
(Microsoft Intermediate Language).
Ketika Anda menjalankan program .exe hasil kompilasi ini pertama
kali, Net Framework akan melakukan proses kompilasi tanpa Anda
ketahui secara instant menjadi bahasa assembly asli yang dikenal dan
bisa dijalankan oleh prosesor. Proses ini dinamakan sebagai JIT (Just In
Time Compilation).
Jika Anda penasaran dengan bahasa IL, Anda kini bisa melihatnya
dengan program disassembler seperti ILDASM yang disediakan
bersama dengan Visual Studio. Anda bisa menjalankan program ini
melalui command prompt rasa Visual Studio (seperti nasi goreng rasa
cumi). Caranya, klik menu StartaAll ProgramsaMicrosoft Visual
Studio 2005aVisual Studio ToolsaVisual Studi Command Prompt
kemudian ketikkan "ILDASM" pada command prompt yang muncul
dan tekan enter.
41
Jasakom
BAB 02. Visual Basic 2005, Action !
Untuk melihat assembly (IL) dari sebuah file exe, buka file tersebut
dengan ILDASM dengan mengklik menu fileaopen (Gambar 2.12).
Pada contoh, saya membuka file KlikSaya.exe yang dibuat sebelumnya.
Terlihat string "Apa Kabar !!" pada event Buttin1_Click !
Kini, Anda sudah mengetahui betapa berbahayanya program dis-
assembling semacam ini ? program yang Anda distribusikan bisa
dengan mudah dipelajari dan bahkan mungkin saja rahasia program
Anda dengan mudah akan terungkap !
43
Jasakom
BAB 02. Visual Basic 2005, Action !
Gambar 2.15. Reflector mampu melihat source code program komersil dengan sangat baik
44
Jasakom
BAB 02. Visual Basic 2005, Action !
Mencegah Hacker Melakukan Disassembly dan
Decompiler
Melihat betapa mudahnya melihat source code dari sebuah program
yang telah dicompile, saya yakin Anda akan berfikir 1001 kali lagi
sebelum membuat sebuah program komersil dengan VB 2005. Saya juga
yakin Anda akan bertanya "Bagaimana caranya saya bisa mencegah
supaya hal ini tidak terjadi ?"
Ada kabar baik dan kabar buruk yang bisa saya sampaikan disini. Anda
mau yang mana disampaikan terlebih dahulu ? Kabar buruknya adalah
Anda tidak bisa mencegah bahasa IL untuk di disassembly maupun di
decompile ! Kabar baiknya, ada bisa mempersulit para decompiler ini
memahami isi source code Anda.
Teknik yang digunakan untuk mengacaukan code IL ini juga bermacam-
macam, dari hanya sekedar merubah nama entity, mengenkripsi string,
merubah nama variable sampai dengan merubah source code Anda.
Tidak heran, jika setelah dilakukan pengacauan, terkadang program
Anda bisa berjalan lebih lambat atau bahkan mengalami kendala.
Teknik untuk melakukan pengacauan informasi IL ini dikenal sebagai
Obfuscation.
Beberapa situs yang menyediakan program obfuscator ini antara
lain http://www.aspose.com, http://www.9rays.net, http://www.
desaware.com, http://www.preemptive.com/, http://www.
remotesoft.com/, dll.
Jika Anda membutuhkan produk sederhana yang gratis (tentunya),
Anda bisa menggunakan program bawaan dari Visual Studio yaitu
Dotfuscator Community Edition. Anda bisa melihat versi-versi dari
Dotfuscator di web site http://www.preemptive.com/products/
dotfuscator/Editions.html
45
Jasakom
Segera Dapatkan !
Buku Compuer Worm 1 & Computer Worm 2
B u k u Te r b aru 2007
Web : www.jasakom.com/penerbitan
email : admin@jasakom.com
Fax : 021-56957634
HP : 0888-1911091