Pages

Friday, December 16, 2011

Tutorial Membuat Cheat Game Dengan Vb6 [Part 3]

sesuai janji saya di postingan Tutorial Membuat Cheat Game Dengan Vb6 [Part 2]. dipostingan tersebut udah mempelajari tentang API2 apa yang kita butuhkan saat melakukan proses hacking dan cara menggunakan API tersebut untuk merubah data dari Memory Address. kalau di postingan part2 hanya mempelajari tentang cara mengubah data memory address aja itu juga prosessnya pada notepad bukan di game.. kalau untuk game bagaimana? nah itu dia yang akan kita bahas.

oke langsung aja alat yang dibutuhkan disini adalah:
-Cheat Engine (versi berapa aja)
-visual basic 6

juga dibutuhkan ketelitian dan pantang menyerah dalam mempelajari tehnik - tehnik cracking
disini kita menggunakan game PlantsVsZombies untuk sebagai contoh, soalnya cuma ada game itu saja di kompi saya.. hehehe
tutorial ini tentang bagaimana penghackan jumlah sun di game tersebut.
sekarang buka Cheat Engine kalian dan open process pada gamenya.
pilih pada scan type: "exact value" dan value type: "4 byte" kemudian masukanlah jumlah sun yang kalian punya contoh: 50 lalu klik "First Scan" setelah keluar banyak address kembali ke game ubah sun kalian misalnya kalian mengambil matahari atau menanam tanaman sehingga Sun nya akan berubah. setelah itu kalian masukan lagi sun yang telah berubah nilainya ke kotak value pada cheat engine lalu klik next sehingga kalian mendapat 1 buah address saja. jika kalian mendapatkan lebih dari 1 ulangi cara tadi sampai kalian mendapatkan 1 address. setelah ketemu addressnya masukan address nya ke table cheat engine. seperti gambar dibawah
sip setelah ketemu address sun nya tinggal kita masukan ke visual basic 6 tapi tunggu dulu
address yang kita scan dan dapatkan tadi bukanlah address yang static. address tersebut dapat berubah ketika game nya relog atau game tersebut dicoba pada komputer lain. sekarang kita lanjut tutorialnya cara mencari address yang tidak dinamis biasanya disebut pointer.
klik kanan pada address di table kemudian klik "Find out what writes to this address" jika ada pesan klik yes saja nanti akan muncul kotak dialog kosong seperti gambar dibawah
disini kita mencari address lain yang mem-write data dari address sun tersebut.
setelah muncul kotak dialognya kalian kembali ke game lalu lakukan perubahan pada nilai sun (saran perubahan sun sebaiknya naik sebesar 25 yaitu dgn cara mengambil sun yang jatuh kebawah) . setelah melakukan perubahan pada Sun nantinya akan muncul seperti ini:
klik lah address nya lalu kalian klik More Information sehingga akan muncul seperti ini:
lihatlah intruksi assembly pada address yang berwarna merah pada gambar diatas yaitu:
add [eax+00005560],ecx <- apa artinya intruksi diatas?
jika kita sudah mengenal intruksi dasar pada assembly pasti kita tahu apa artinya kode diatas?
kita lihat pada kata kunci "add"(tulisan berwarna merah) intruksi ini terdiri atas 2 parameter jika dilihat parameter kesatu adalah berwarna hijau dan parameter kedua adalah berwarna biru
kode ini mengintruksikan parameter pertama ditambah oleh parameter kedua.
coba kita lihat pada parameter pertama: [eax+00005560] -> apa artinya ini? kita lihat pada register bernama "eax" lihatlah pada gambar diatas yang saya lingkari
"EAX =102E30B0" jadi parameter pertama ini mengacu pada address EAX + 5560
artinya 102E30B0+5560 silahkan kalian buktikan di calculator windows dengan menjumlahkan kedua bilangan tersebut ingat bilangan ini berbentuk hexa maka hasilnya adalah address Sun yang kalian dapat tadi.
lihatlah register bernama "ecx"(parameter kedua) jika lihat gambar diatas nilai yang tersimpan pada register "ecx" adalah 19 (dalam bentuk bilangan hexa) jika dirubah ke angka decimal adalah 25. mengapa 25? karena saya telah melakukan perubahan nilai Sun sebesar '25'
jadi arti intruksi jika diterjermahin lagi artinya "tambahkan pada address eax+5560 dengan ecx"
atau lebih mudahnya tambahkan Address Sun dengan nilai sebesar 25.
ingat kode diatas hanya berlaku pada anda yang melakukan perubah nilai Sun menambah bukan berkurang.

oke kembali ke topik bagaimana cara mencari Address yang tidak statis? jika kita lihat pada intruksi tadi nilai "5560" adalah offset dan "eax" adalah nilai yang akan ditambahkan offset nantinya. kedua nilai tersebut adalah pointer penunjuk ke alamat address sun yang kalian temukan tadi. jadi kembalilah ke cheat engine centrang Hex lalu masukan value "eax" pada intruksi assembly tadi yaitu: 102E30B0 kemudian klik new scan dan setelah itu akan muncul banyak address kalian pilih yang paling atas dan masukan ke table Cheat Engine seperti gambar di bawah:
bisa kita liat pada contoh gambar diatas address yang kita dapat adalah 0018926C inilah address statis yang bisa kita gunakan sebagai pointer untuk menunjukan alamat dari address sun.
ada untuk pointer rumusnya begini:
Address = value dari address 0018926C + offset yang kalian dapat tadi. hal ini mirip dengan pointer pada parameter pertama dari intruksi add [eax+00005560],ecx dimana value dari address 0018926C merupakan nilai dari register "eax". oke sekarang tinggal gimana coding nya pada vb6, perhatikan code dibawah ini

CODE
'declare dulu
Private Declare Function GetWindowThreadProcessId Lib "user32" _
(ByVal hwnd As Long, lpdwProcessId As Long) As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal _
dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal _
dwProcessId As Long) As Long
Private Declare Function WriteProcessMemory Lib "kernel32" ( _
ByVal hProcess As Long, ByVal lpBaseAddress As Any, _
lpBuffer As Any, _
ByVal nSize As Long, _
lpNumberOfBytesWritten As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal IpClassname As String, ByVal IpWindowName _
As String) As Long
Private Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Private Declare Function CloseHandle Lib "kernel32.dll" (ByVal hObject As Long) As Long
Dim Hwndx As Long
Dim PID As Long
Dim OpenX As Long
Dim BaseAddr As String
Private Function ReadMemory(Address As Long) As Long 'modul ini berfungsi untuk membaca value dari base address
'fungsi ini hanya dapat membaca value hanya sampai jangkauan Signed Long (32,767)
Dim OpenZ As Long, PID As Long
Hwndx = 0
Hwndx = FindWindow("MainWindow", vbNullString) 'mencari windows
If Hwndx = 0 Then Exit Function
GetWindowThreadProcessId Hwndx, PID
OpenZ = OpenProcess(&H10, False, PID)
If OpenZ = 0 Then Exit Function
ReadProcessMemory OpenZ, Address, ReadMemory, 4, 0&
CloseHandle OpenZ
End Function

Private Function WriteMMry(Addres As Long, Value As Long)'modul ini berfungsi untuk mem-write memory
Hwndx = 0
Hwndx = FindWindow("MainWindow", vbNullString) 'mencari windows
If Hwndx = 0 Then
MsgBox "Game Tidak Ditemukan!", vbCritical, "Error"
Exit Function
End If
GetWindowThreadProcessId Hwndx, PID 'mendapatkan ProcessID target
OpenX = OpenProcess(&H1F0FFF, False, PID) 'membuka akses pada program
If OpenX <> 0 Then WriteProcessMemory OpenX, Addres, Value, 4, 0&
CloseHandle OpenX
End Function
sekarang bagaimana cara memanfaatkan pointer untuk mencari address sun tadi pada modul di vb6
untuk pemanggilan fungsi nya dan sekaligus cara penulisan pointer di vb6:

CODE
BaseAddr = ReadMemory(&H18926C) 'membaca value dari base address
BaseAddr = Val(BaseAddr) + Val(&H5560) 'penambahan, ini sebagai pointer ke address
WriteMMry "&h" & Hex(BaseAddr), 9999 'mem-write address sun dengan nilai 9999
jika kalian melakukan tutorial ini dengan benar kalian telah berhasil membuat suatu cheat game /trainer yang bisa di pakai di komputer orang lain. bagi yang ga ngerti comment aja kalau sempet tak jawab kok. bagi yang gak mudeng2 jangan pernah putus asa!

Tutorial Membuat Cheat Game Dengan Vb6 [Part 2]

dipostingan saya yang satunya udah kita sudah mengenal memmory address dan apa yang dimanfaatkan oleh cheater untuk membuat suatu kecurangan dalam bermain game.
biasanya kebanyakan orang memanfaatkan seperti memmory address nya uang dalam game atau memmory addressnya darah dalam game atau juga memmory addressnya score dalam game dan masih banyak lagi.. sekarang yang dibahas disini adalah bagaimana langkah-langkah cara untuk memanfaatkan memmory address dan bagaimana code-code dalam bentuk vb. seperti apaya?

oke langsung aja. dalam hal ini kita akan berinteraksi dengan system windowsnya sendiri yang biasa disebut API (Aplication Programming Interface)

langkah pertama API yang kita gunakan:
"Findwindow"

Private Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" ( _
ByVal IpClassname As String, _
ByVal IpWindowName As String) As Long
API
API ini berfungsi untuk mencari suatu program/aplikasi yang sedang Running.
#text berwarna merah = nama API dimana kita bisa memanggil fungsi API tersebut dengan keyword "FindWindow"
#text berwarna biru = merupakan parameter pertama. parameter ini bisa diisi sesuai nama Class Name dari aplikasi/program. contoh microsoft word memiliki class name yaitu "OpusApp".
#text berwarna Hijau = merupakan parameter kedua. parameter ini bisa diisi sesuai nama Window Name nya atau judul window nya seperti gambar dibawah:

Contoh Pemanggilan fungsi API ini untuk mencari microsoft word:
CODE
Dim Hwndx As Long
Hwndx = FindWindow("OpusApp", vbNullString)
If Hwndx <> 0 Then Msgbox"Microsoft Word Ditemukan!"

'kalau yang ini untuk mencari notepad dalam windows
Hwndx = FindWindow(vbNullString, "Untitled - Notepad")
If Hwndx <> 0 Then Msgbox"Notepad Ditemukan"


API Kedua yang dibutuhkan yaitu:
"GetWindowThreadProcessId"

Private Declare Function GetWindowThreadProcessId Lib "user32" ( _
ByVal hwnd As Long, _
lpdwProcessId As Long) As Long
API ini berfungsi untuk mendapatkan Process ID dari sebuah aplikasi/program yang sedang running.
#text berwarna biru = Merupakan Parameter pertama. diisi dengan Hasil Return dari pemanggilan fungsi "Findwindow" tadi
#text berwarna Hijau = merupakan parameter kedua. diisi dengan variable bertipe Long untuk menyimpan sementara Process ID dari Program (Process ID ini akan Return ke Variable yang diisi pada parameter kedua).
contoh penggunaan API "GetWindowThreadProcessId"
CODE
Dim Hwndx As Long, pid As long
Hwndx = FindWindow(vbNullString, "Untitled - Notepad")
If Hwndx = 0 Then Exit Sub
GetWindowThreadProcessId Hwndx, pid
MsgBox pid

code diatas berfungsi untuk mendapatkan Process ID dari Notepad yang nantinya akan disimpan di Variable bernama "pid"

API Ketiga yang dibutuhkan yaitu:
"OpenProcess"

Private Declare Function OpenProcess Lib "kernel32" ( _
ByVal dwDesiredAccess As Long, _
ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) As Long
API ini berfungsi untuk meng-set suatu Akses ke memmory address suatu aplikasi/program. jika kalian tidak menggunakan api ini akan percuma dan gagal karena akses ke memmory address tidak diperbolehkan. akhirnya harus pake API ini untuk memperbolehkan program cheat kita untuk mengakses Memmory Address.
#Tulisan warna biru = merupakan parameter pertama. bisa diisi dengan nilai "&H1F0FFF". nilai tersebut saya ambil dari konstanta PROCESS_ALL_ACCESS yang artinya membuka semua akses ke memmory address mulai dari 'Read Memory','Write Memory'.
#Tulisan warna hijau = Merupakan Parameter kedua. diisi dengan "False"
#tulisan Warna kuning = Merupakan parameter ketiga. diisi dengan Process ID yang didapatkan melalu fungsi API "GetWindowThreadProcessId"
Contoh Penggunaannya:
CODE
On Error Resume Next
Dim Hwndx As Long, pid As Long, OpenX As Long
Hwndx = FindWindow(vbNullString, "Untitled - Notepad")
GetWindowThreadProcessId Hwndx, pid
OpenX = OpenProcess(&H1F0FFF, False, pid)
If OpenX <> 0 Then
MsgBox "OpenProcess Sukses!", vbInformation
Else
MsgBox "OpenProcess Gagal!", vbCritical
End If

code diatas berfungsi untuk menjadikan process menjadi Process_ALL_ACCESS jadi kalian bisa Read Memory atau Write Memory

API Keempat yang dibutuhkan yaitu:
"WriteProcessMemmory"

Private Declare Function WriteProcessMemory Lib "kernel32" ( _
ByVal hProcess As Long, _
ByVal lpBaseAddress As Any, _
lpBuffer As Any,
ByVal nSize As Long, _
lpNumberOfBytesWritten As Long) As Long
API ini berfungsi untuk mem-write Data Memmory Address suatu program/aplikasi
#Tulisan berwarna biru = merupakan parameter pertama. diisi dengan hasil return dari API "OpenProcess".
#Tulisan berwarna Hijau = merupakan prameter kedua. nah disini anda harus mengisikan alamat Address berbentuk angka ingat tambahkan kata kunci "&H" sebelum kalian menuliskan Alamat Addressnya contoh jika kalian ingin mem-write address 04699709 ini, sebelum mengisi parameter ini diubah dulu menjadi "&h4699709". karena alamat tersebut merupakan bilangan Hexa. baca disini.
#Tulisan berwarna kuning = merupakan parameter ketiga. inilah sebuah value yang akan dikirimkan ke memmory address yang akan dituju terserah parameter ini mau berbentuk hexa atau decimal gak masalah.
#Tulisan berwarna merah = merupakan Parameter keempat. parameter ini menentukan jumlah bytes yang untuk pem-write an kedalam Memory Address. jika kalian ingin memwrite dengan type Unsigned Long isi parameter ini menjadi "4" ini hanya akan mencapai jangkauan buffer dari 0 hingga 4294967295 . satuan diparameter ini berbentuk bytes.
#Tulisan berwarna Coklat = diparameter ini isi saja dengan "0&" alias parameter ini adalah nol.
jadi secara keseluruhan contoh nya seperti ini:

code dibawah contoh untuk mem-Write memory pada address "0227E16A" pada Notepad dengan jangkauan Unsigned Long, walaupun di vb6 tidak ada variable Unsigned Long tapi bisa diakalin kok.
CODE
dalam code ini kita menampung value sementara dengan variable string karena vb6 tidak support dengan Unsigned Long jika bervariable Long(Signed Long) jangkauan hanya sampai 2147483647(setengahnya dari Unsigned Long) jadi gimana dong? hehehe.. kan code dibawah kita tidak memakai wadah bertipe Long tetapi pakai string.
CODE
Private Function WriteUnsignedLong(Address As Long, Value As String)
Dim Hwndx As Long, PID As Long, OpenX As Long
Hwndx = FindWindow(vbNullString, "Untitled - Notepad")
GetWindowThreadProcessId Hwndx, PID
OpenX = OpenProcess(&H1F0FFF, False, PID)
If Val(Value) >= 4294967295# Then Exit Function 'jika Value Besar dari Unsigned Long maka exit function
If Val(Value) >= 2147483647 Then 'jika value melebihi Batas Signed Long
Dim NewVal As Long
Value = Value / 2
WriteProcessMemory OpenX, Address, Val(Val(Value) * 2), 4, 0&
Else
'jika value lain dari antara jangkauan maximal Signed Long sampai Unsigned Long akan masuk ke blok ini
WriteProcessMemory OpenX, Address, CLng(Value), 4, 0&
End If
End Function

untuk pemanggilan function:
CODE
WriteUnsignedLong &H227E16A, (Value yang kalian inginkan)

code diatas cuma contoh pengubahan value sebuah Memory Address bagaimana kalau address game yang seperti Money, Score, Health/darah?? caranya sama kaya code diatas cuman kita ganti target parameter pertama di API FindWindow menjadi game yang kita inginkan dan Memory Address nya dirubah menjadi alamat memory dari money/score/darah.
bagaimana cara mencari address tersebut dan bagaimana mencari address statis agar alamat memory tidak berubah-ubah? jawabannya nanti ada Tutorial Membuat Cheat Game Dengan Vb6 [Part 3]. Sekian dulu yah capek ngetik neh.. hahaha...
kalau ada yang gak ngerti silahkan tanya di Comment kalau sempet tak jawab.

Thursday, December 15, 2011

Tutorial Membuat Cheat Game Dengan Vb6 [Part 1]

Apa sih cheat game itu?? kalian yang berkecimpung di dunia game pasti tau apa itu artinya cheat..
oke,, cheat game adalah sebuah alat/aplikasi yang memodifikasi/merubah secara paksa data suatu game yang sedang berjalan melalui "Memmory Address". nah apa lagi tuh Memmory Address? "Memmory Address" adalah sebuah alamat yang berbentuk angka yang memiliki ukuran dalam bentuk Byte didalamnya dan dimana data dan intruksi disimpan disitu(RAM).

contoh:

dalam data memmory address disamping sebuah memmory address memiliki data sebagai berikut:


-memiliki alamat yaitu "103140A8" (ingat angka tersebut dalam bentuk bilangan hexa)
-memiliki type alamat yaitu 4 Bytes (Unsigned Long)
-memiliki data/nilai berbentuk DESIMAL sebesar 50
alamat yang memiliki type sebesar 4 bytes mempunyai jangkauan nilai dari 0 sampai 4294967295, jika kalian mem-write memmory addressnya dengan buffer lebih dari 4294967295 ini tidak akan work karena melewati batas jangkauan tetapi bisa juga jika kalian ingin mem-write lebih dari jangkauan unsigned long(4294967295) kalian bisa ubah juga ukurannya type nya menjadi 8 bytes karena karena jangkauannya akan lebih besar lagi.
seperti halnya alamat rumah, ukurannya 9 x 14 m, memiliki fasilitas toilet 5 buah dan kamar tidur 5 buah.
memmory address biasanya menjadi tempat sasaran hacking oleh parah cheater dengan memanfaatkan celah/bug didalamnya.
value dalam memmory address inilah yang akan dirubah nilainya dan terjadilah kecurangan.
sekarang kita akan mempelajari bagaimana cara merubah memmory addres suatu aplikasi yang sedang 'Running' dalam bentuk source code vb? langsung aja ke postingan saya
Tutorial Membuat Cheat Game Dengan Vb6 [Part 2]

Tuesday, September 20, 2011

Penggunaan DoEvents di VB

mungkin kebanyakan pada ga tau ya gunanya statement DoEvents di vb?
padahal kalau kita tes fungsi statement DoEvents di vb seperti ini:

Private Sub Command1_Click()
DoEvents
End Sub

ketika kita pencet CommandButton trus apa yang terjadi?
ya tentu ga terjadi apa2.. penggunaan statement DoEvents bukan disitu tempatnya
penggunaan statement DoEvents biasa digunakan pada statement perulangan
seperti: For..Next atau Do While ... Loop dan lain2
contoh:
tambahkan 1 buah Label1 dan Command Button
CODE
Private Sub Command1_Click()
Dim a As Long
Do Until a = &HFFFFFFFF
a = a + 1
Label1.Caption = a
DoEvents
Loop
End Sub
jadi fungsi DoEvents di vb ini memberi/mengijinkan user untuk tetap bisa berinteraksi dengan aplikasi kita saat code di eksekusi
seandainya statement DoEvent Dihilangkan Pasti aplikasi kalian Hang
coba aja kalo ga percaya!

Tuesday, August 9, 2011

Otomatis Menghitung pada vb6

otomatis menghitung di vb6 cara ini menggunakan fungsi for. langsung aja siapkan 1 buah listbox (List1)
masukan kode berikut:

Private Sub Form_Load()
Dim i As Integer, a As Integer, b As Long
For i = 1 To 10
a = i
b = i * a
List1.AddItem i & " x " & a & " = " & b
Next
End Sub

intinya fungsi for diatas itu berfungsi menghitung dan memasukannya kedalam
variable a dan b setelah itu variable a dan b dikalikan dan dimasukan kedalam
variable b kemudian variabel b di masukan kedalam Listbox
(dan itu dilakukan sebanyak 10x)

Sunday, July 31, 2011

Mengenal Visual Basic 6 (Bagian 2)

artikel ini merupakan lanjutan dari Mengenal Visual Basic 6 (Bagian 1) soalnya kalo artikelnya dijadiin satu nanti kepanjangan. oke kita lanjut aja..!!
dalam visual basic ada tool-tool yang sangat berguna bagi para programmer untuk mengembangkan aplikasi yang mereka buat.yaitu:

Properties

Propoerti digunakan untuk menentukan setting suatu objek. Suatu objek biasanya mempunyai
beberapa properti yang dapat diatur langsung dari jendela Properties atau lewat kode program. Setting
properti akan menentukan cara kerja dari objek yang bersangkutan saat program aplikasi dijalankan,
misalnya menentukan warna objek, bingkai objek, pengambilan data dan lain-lain.

Kode program

Kode program adalah serangkaian tulisan perintah atau intruksi-intruksi yang menggunakan bahasa basic, dan kode tersebut akan dijalankan sesuai ketentuan event pada visual basic. jika programmer menulis serangkaian intruksi-intruksi tersebut pada event Form_Load (pada gambar) artinya intruksi tersebut akan dijalankan pada saat  Form ter-Load atau Aplikasi baru dijalankan
Kode program ini akan mengontrol dan menentukan jalannya suatu objek. cara memview Kode Program yaitu: klik kanan Form lalu klik tulisan View Code.

 Menu Editor

Menu Editor merupakan cara untuk pengeditan atau pembuatan menu-menu yang biasanya terletak diposisi paling atas area form.
untuk mengisikan intruksi atau kode  pada menu terdapat pada Tool: View Code yang menggunakan event Click. Cara membuka menu editor yaitu: Klik kanan Form lalu pilih tulisan Menu Editor.

Saturday, July 30, 2011

Membuat atau menghapus folder di vb6

 Sebelum menjalankan fungsi,  pastikan isi dari folder tersebut sudah Kosong, (karena takutnya file anda hilang nanti)
Menghapus Suatu Folder :
 RmDir (“c:\FolderTest”)

Cara untuk menghapus isi Dari folder tersebut :
 Kill “c:\FolderTest\*.*”

Membuat Folder baru :
 MkDir (“c:\FolderTest”)

Mengenal Visual Basic 6 (Bagian 1)

buka vb6 kalian lalu pilih yang Standard EXE
sehingga akan muncul seperti ini:

tenang aj pada gammbar yang ada nomornya ada keterangannya kok..
1. Menubar
Pada bagian ini terdapat menu-menu dasar yang akan digunakan selama perancangan
program. Ada Menu File (untuk membuka program, menyimpan program, dll), meni View (untuk
menampilkan tool-tool yang belum ada), Menu Run (untuk kompilasi), dsb.

2. Toolbar
Pada bagian ini ditampilkan icon-icon dari menu utama yang ada pada menubar.

3. Toolbox
Digunakan untuk pemilihan kontrol-kontrol yang akan digunakan oleh program yang akan
dirancang. Setiap kontrol diwakili oleh sebuah icon toolbox.

4. Jendela Form
Form adalah area tampilan yang berhubungan dengan sebuah jendela yang dapat dilihat ketika
aplikasi berjalan. Pada form ini dapat diletakkan kontrol dan kode untuk pembuatan program.
Form akan banyak digunakan saat perancagan.

5. Jendela Code
Jendela Code digunakan untuk menuliskan source code dari program yang kita buat. nah disini lah para programer menuliskan intruksi intruksi yang make bahasa pemrograman tersendiri

6. Project Explorer
Project Explorer akan menampilkan form-form dan modul yang ada di dalam program yang kita
buat. Dengan project explorer kita dapat berpindah-pindah dari satu form ke form yang lain.

7. Jendela Properties
Digunakan untuk mengatur sifat(properti) dari form atau kontrol-kontrol. Isi dari wiondow
properties ini dapat berubah-rubah sesuai dengan form atau kontrol yang dipilih.



Mengenal Komponen yang ada di toolbox

___________________________________________________________________________
Label Untuk menampilkan tulisan pada form. sang user tidak dapat
mengubah tulisan tersebut secara langsung
Contoh Penggunaan Label








   


___________________________________________________________________________
TextBox Digunakan sebagai tempat input/juga dapat digunakan untuk
menampilkan teks, dan pemakai dapat mengubah-ubah tulisan yang
terdapat pada control ini.


Contoh Penggunaan Textbox











___________________________________________________________________________
ListBox Menampilkan beberapa item, dan dari control ini item-item tersebut
dapat dipilih. Scrollbar dapat digunakan untuk enggulung pilihan
yangtidak dapat ditampilkan seluruhnya.

Contoh Penggunaan ListBox











___________________________________________________________________________
ComboBox Merupakan kombinasi antara TextBox dan ListBox. Sehingga
pemilihan item dapat dilakukan dari ListBox, atau dengan mengetik
langsung pada TextBox.


Contoh Penggunaan ComboBox










  ___________________________________________________________________________

CommandButton Menjalankan suatu tindakan jika pemakai telah melakukan pilihan
dengan menekan control ini.



Contoh Penggunaan CommandButton










  ___________________________________________________________________________

Frame Mengelompokkan control-control secara visual (tergambar) atau
Contoh Penggunaan Frame












Untuk lanjutannya Silahkan sobat baca artikel saya diMengenal Visual Basic 6 (Bagian 2)

Mengenal Bahasa Pemrograman


Bahasa pemrograman adalah instruksi-instruksi yang dengan aturan tata bahasa tertentu yang dicompile kemudian dimengerti oleh komputer untuk melakukan tugas-tugas tertentu, tentu saja kita mengisikan intruksi2 trsbt di program khusus compiler yang menggunakan bahasa pemrogram sendiri2 contoh compiler yaitu: Visual basic, Microsoft visual c++, Delphi,, masm32 dst.. compiler trsbt memiliki bahasa pemrograman tersendiri.
gak mungkin kan kita buat program pake bahasa indonesia kaya gini "Komputerku buatin aplikasi dong!!"
hahaha..
tentu make bahasa yang dimenegerti komputer lah...

bahasa pemrograman dikelompokkanatas dua macam :

1. Bahasa tingkat rendah
Bahasa jenis ini dirancang agar setiap instruksinya langsung dikerjakan komputer tanpa harus
melalui penerjemah (translator). Contohnya adalah bahasa Assembly
2. Bahasa tingkat tinggi
Bahasa tingkat tinggi membuat pemrograman lebih mudah dipahami, dan
berorientasi ke bahasa manusia (bahasa inggris). Yang termasuk dalam bahaa ini adalah
Pascal, PL/I, Ada, Cobol, Basic, Fortran, C dan sebagainya.

kata kebanyakan orang sih semakin rendah bahasa pemrograman, lebih susah untuk dipahami. tapi klo kita belajar sih bisa bisa aja.

Wednesday, July 27, 2011

Membatasi Karakter Textbox di Vb6

pada taukan textbox di vb6? textbox bisa sebagai media yang bs dioprasikan sama user lalu
datanya akan diproses di form vb6. nah lalu bagaimana caranya agar data pada textbox yg
diinputkan ma user bs dbatasin penggunaan karakternya? gampang kok caranya

sobat tgl liat properties textbox trsbt trus cari yang bacaannya MaxLenght dan ubah value nya
menjadi yang sobat inginkan. misalnya sobat ubah jadi 5 setelah di run nanti textbox hanya
bisa diisi sampai hanya 5 karakter atau dengan kodenya:
Text1.MaxLength = 5

Tuesday, July 26, 2011

Mengetahui keyascii tombol pada keyboard dan mouse in vb6

Setiap tombol-tombol pada keyboard, mereka mempunyai kode ascii tersendiri.
contoh tombol F1 pada keyboard mempunya keyascii yaitu 112. keyascii ini berguna sebagai pernyataan tombol yang ada di keyboard dalam pemrograman, contohnya bisa dilihat di artikel saya satunya Disini.
nah skrg buat 2 buah label trus copy kan kode berikut

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Label1.Caption = KeyCode
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label2.Caption = Button
End Sub

tekan f5 lalu  sobat tekan tombol apa aja di keyboard 

mengetahui tombol keyboard yang ditekan oleh user di vb6 menggunakan API

disini akan membahasa tentang cara untuk mengetahui user menekan tombol apa dikeyboard?. nah cara ini menggunakan fungsi api di vb6, yaitu nama fungsinya adalah "GetAsyncKeyState". fungsi api ini juga bisa digunakan untuk pembuatan keylogger karena bisa menyadap keyboard user yang sedang menekan tombol dan mencatat  data trsbt di tempat penyimpanan kata seperti Notepad. pastinya bisa buat nyatet Password diwarnet hehehehe..(kaya hacker aja)...

back to topic!!
langsung aja.. tambahkan komponen timer dengan interval  1.
copy paste kode berikut ke form

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Sub Timer1_Timer()
If GetAsyncKeyState(112) Then MsgBox "Anda telah menekan tombol F1"
End Sub

setelah itu tekan F5 dan untuk mengetesnya coba sobat tekan tombol  F1 di keyboard dan sobat bakal mendapatkan pesan.
untuk tulisan yang berwarna biru (kode diatas) kenapa kok 112? penjelasannya ada Disini

Wednesday, July 20, 2011

Menghitung Bilangan Hexa Dalam Visual Basic 6

Pada tau kan Bilangan Hexa itu apa? 
yaaa...bilangan hexa itu terdiri dari 16 nilai:
0 - 9 dan A,B,C,D,E,F  hmmm Bingung juga yah
sedangkan decimal aja  yang kepake cuma nyampe 9 lha ini bilangan hex sampe F... Wtf!!
apalagi kalau kita menemukan soal yang seperti ini "14FAB + AD9F" wkakaka berapa tuh hasilnya?? (yang pasti ada koq hasilnya. dan ga akan ngaco juga soalnya)

 okeee kalo sobat dah tau visual basic dan sudah bisa bikin kalkulator lalu bagaimana dengan kalkulator hexa ini?
ini dia code nya:
buat 2 buah textbox

Dim Hasil As String
Hasil = Hex(Val("&h" & Text1) + Val("&h" & Text2))

jika ingin perkalian sobat tinggal ganti   "+" menjadi "*" (tanpa tanda kutip)
jika ingin peembagian sobat tinggal ganti   "+" menjadi "/" (tanpa tanda kutip) dst..
jadi dalam visual basic6 untuk menyatakan bahwa bilangan hexa yaitu dengan menulis "&h" (tanpa tanda kutip)
o iya dalam memory address bilangan hexa ini sangat penting sekali untuk dipelajari (memory address bisa diotak atik untuk software hacking atau game hacking) hmmm mungkin cracking kali ya..??!??

Cara Membuat Cheat Game Dengan Vb6

Nah kali iini artikelnya akan membahas cara membuat cheat dengan vb6. pada tau kan cheat itu apa?
kalau dalam game cheat itu cara bermain curang nah pasti kalian pada bingung "gimana sih caranya buat cheat
itu?" hahaha... tenang aq ajarin deh buat cheat nya langsung aja...
tutorial ini tentang cara membuat trainer Game "PlantsVsZombies"




syarat:
-Tau Semua Komponen dan Properties komponen
-Ketekunan
-Kopi susu (wkwkw..)
- Dan pastinya tau apa itu visual basic6 ?


-Buat 5 buah timer (jangan ubah nama Timer trsbt):
-1 buah textbox untuk kotak status (jangan di ganti namanya)
*untuk intervalnya:
timer1 = 1
timer2 = 1
timer3 = 1
timer4 =500
timer5 =500
*Edit Form menjadi seperti gambar diatas atau sesuai kreasi kalian
*label name :
F1: Sun Hacks = F1
F2 : No Delay = F2
F3: Money Hack = F3
F4: Unlimeted life Plant = F4
F5: Fast kill = F5

sekarang copy kan kode di bawah yang berwarna merah ke code project kalian
_________________________________________________________________________________________
Private Const PROCESS_VM_WRITE = (&H20)
Private Declare Function GetWindowThreadProcessId Lib "user32" _
(ByVal hwnd As Long, lpdwProcessId As Long) As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal _
dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal _
dwProcessId As Long) As Long
Private Declare Function WriteProcessMemory Lib "kernel32" _
(ByVal hProcess As Long, ByVal lpBaseAddress As Any, lpBuffer _
As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As _
Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal _
hObject As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal IpClassname As String, ByVal IpWindowName _
As String) As Long
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Const GWL_STYLE = (-16)
Private Const WS_THICKFRAME = &H40000
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
(ByVal hwnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
(ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long

Dim HwnDx As Long
Dim pid As Long
Dim OpenX As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim HackS As Long
Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long
Dim BaseAddr As String
Private Function ReadMemory(Address As Long) As Long 'modul ini berfungsi untuk membaca value memory base address
Dim OpenZ As Long, pid As Long
If HwnDx = 0 Then Exit Function
GetWindowThreadProcessId HwnDx, pid
OpenZ = OpenProcess(&H10, False, pid)
If OpenZ = 0 Then Exit Function
ReadProcessMemory OpenZ, Address, ReadMemory, 4, 0&
Sleep 15 'istirahat
BaseAddr = ReadMemory
CloseHandle OpenZ 'biar gak kebuka trus
End Function
Private Function WriteMMry(Addres As Long, Value As Long)
If HwnDx = 0 Then
MsgBox "Game Tidak Ditemukan!", vbCritical, "Error"
Exit Function
End If
GetWindowThreadProcessId HwnDx, pid
OpenX = OpenProcess(PROCESS_VM_WRITE, False, pid)
If OpenX = 0 Then Exit Function
HackS = WriteProcessMemory(OpenX, Addres, Value, 4, 0&)
Sleep 15 'istirahat
CloseHandle OpenX
End Function

Private Sub Form_Load()
'salam dulu...hehehehe

MsgBox "Create By: Rizky Smp", vbInformation, "Cheat Plants Vs Zombies"
MsgBox "Cheaters Never Dies", vbExclamation, "Warning!"
MsgBox "wkwkwkwk", vbInformation, "Cheat Plants Vs Zombies"
End Sub
Private Sub Timer1_Timer()
'disable Resize
Dim lStyle As Long
lStyle = GetWindowLong(Me.hwnd, GWL_STYLE)
lStyle = lStyle And Not WS_THICKFRAME
Call SetWindowLong(Me.hwnd, GWL_STYLE, lStyle)
End Sub

Private Sub Timer2_Timer()
'nah, ayo prosess hacking dimulai!!
Dim AddrSun As String
Dim addr As Long
If GetAsyncKeyState(112) Then 'Hack Sun
Call ReadMemory(&H1292AC)
AddrSun = Hex(BaseAddr + &H5560)
Call WriteMMry(("&h" & AddrSun), 9999999)
Beep
End If
If GetAsyncKeyState(113) Then 'No Delay
Call WriteMMry(&H48728C, 2377601)
Beep
End If
If GetAsyncKeyState(114) Then 'Money
ReadMemory &HCF8644
AddrSun = Hex(BaseAddr + &H28)
Call WriteMMry(("&h" & AddrSun), 9999999)
Beep
End If
If GetAsyncKeyState(115) Then 'Infinity health
Call WriteMMry(&H52FCF0, &H90909090) '<<opcodes berbasis value wkwowkwkwo
Beep
End If
If GetAsyncKeyState(116) Then 'fast kill neh wkwowkokw
Call WriteMMry(&H53105E, 13667627)
Call WriteMMry(&H53130F, &H90243C2B)
Call WriteMMry(&H531053, 6949355)
Call WriteMMry(&H530CA1, 14452361)
Beep
End If
End Sub
Private Sub Timer3_Timer()
HwnDx = FindWindow("MainWindow", vbNullString)
If HwnDx = 0 Then Text1.Text = "Cheat No Active"
If HwnDx >= 1 Then
Text1.Text = "Cheat Active"
End Sub

Private Sub Timer4_Timer()
'hiasan boss
F1.ForeColor = vbRed
F2.ForeColor = vbRed
F3.ForeColor = vbRed
F4.ForeColor = vbRed
F5.ForeColor = vbRed
End Sub

Private Sub Timer5_Timer()
'hiasan juga boss
F1.ForeColor = vbGreen
F2.ForeColor = vbGreen
F3.ForeColor = vbGreen
F4.ForeColor = vbGreen
F5.ForeColor = vbGreen
End Sub

_________________________________________________________________________________________
kalau sudah compile atau tekan F5 lalu jalankan game plantsvszombies
untuk yang belom paham silahkan download aja projectnya Disini
jika kalian ingin mengerti bagaimana kode2 tersebut dibuat pelajari di artikel saya pelajari disini
NB: Source Code diatas asli buatan saya bukan buatan orang lain! jangan asal copy paste aja lho!