Satu bulan lalu (awal Juli) saya lihat 1 web iklan yang menyatakan bahwa mencari uang di internet itu mudah. Pemilik web itu bilang tiap minggu ada uang ratusan ribu masuk ke rekeningnya. Saya tentu saja mau seperti dia... Tapi bijimane caranya..?
Selama 1 bulan ini saya coba belajar bisnis internet, kira2 dengan hal apa saya bisa dapat uang dengan hanya browsing internet.
Setelah 1 bulan berkelana, saya baru dapat $1,11. Tapi lumayan lah daripada gak ada, karena kata orang2 bisnis di internet itu butuh waktu sampai berbulan-bulan bahkan tahunan untuk bisa sukses. Jadi saya harap ini awal dari sukses itu.
Ini adalah bukti pembayaran dari situs Aurora Intoffers.com sebesar $1,11. Ini bukti bahwa bisnis di internet itu ternyata benar real. Pembayaran ini dilakukan ke akun Paypal saya.
Cashout Pertama intoffers.com
Diposting oleh T. Erick Sitorus | 05.25 | Pay Per Click | 0 komentar »Perbedaan Deklarasi Parameter dengan ByVal dan ByRef
Diposting oleh T. Erick Sitorus | 05.17 | Aplikasi | 3 komentar »Mungkin sudah banyak yang mengetahui perbedaan deklarasi parameter dengan ByVal dan ByRef ini, namun saya rasa tidak ada salahnya untuk membahasnya lagi disini. Siapa tahu masih ada sejumlah visitor yang belum mengetahuinya (Kemana aja selama ini..?).
Untuk deklarasi parameter pada suatu method sub / function secara default akan menggunakan keyword ByVal. VB.Net 2008 akan menambahkannya secara otomatis saat anda mendeklarasikan sebuah parameter.
Jika suatu parameter dideklarasikan sebagai ByVal maka nilai parameter tersebut adalah copy-an nilai / salinan dari method pemanggilnya. Jadi ketika parameter tersebut diubah pada method sub / function, ia tidak akan berpengaruh pada nilai di pemanggilnya / hanya berubah didalam sub / functionnya sendiri.
Maka kebalikannya terjadi jika anda menggunakan ByRef, dengan ByRef maka parameter akan menggunakan nilai dan objek yang sama dengan pemanggilnya (mereferensi ke objek di pemanggilnya). Jadi jika nilai parameternya berubah di dalam sub / function tersebut maka perubahan juga terjadi di method pemanggilnya.
Saya rasa dari penjelasan diatas perbedaan antara deklarasi parameter dengan ByVal dan ByRef sudah cukup jelas dan tidak perlu dicontohkan.
Postingan kali ini mengenai datareader di VB.Net 2008, object ini digunakan khusus untuk membaca data dan sifatnya read only dan forward only. Read Only dalam artian object ini tidak dapat digunakan untuk melakukan manipulasi data. Forward Only sendiri berarti bahwa selama dalam proses pembacaan record maka datareader tersebut tidak dapat melakukan navigasi record ke record sebelumnya yang sudah dibaca.
Berikut adalah contoh penggunaan datareader. Siapkan sebuah database di SQL Server dengan nama testing dan sebuah tabel bernama t_obat. Berikut penampakan tabel t_obat. (SQL Query dapat didownload di akhir postingan ini)
Sekarang buatlah project baru di VB.Net 2008 dan beri nama Test_datareader. Buatlah form dengan tampilan seperti dibawah ini dengan menggunakan 1 label, 2 button dan 1 listbox.
Ketikan kode berikut ini untuk form diatas. Dalam kode ini datareader digunakan untuk membaca data dari database dan ditampilkan ke listbox.
Imports System.Data.SqlClient
Public Class Form1
Private Sub ButtonCallDataReader_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCallDataReader.Click
Dim connectionString As String = "Data Source=ZHENLONK-342572;Initial Catalog=testing;Integrated Security=True"
Dim koneksi As New SqlConnection(connectionString)
Using cmd As New SqlCommand
cmd.Connection = koneksi
cmd.CommandType = CommandType.Text
cmd.CommandText = "SELECT * FROM t_Obat"
Dim mydatareader As SqlDataReader = Nothing
Try
koneksi.Open()
mydatareader = cmd.ExecuteReader
While mydatareader.Read
ListBoxData.Items.Add(mydatareader(0) & " - " & mydatareader(1) & " - " & mydatareader(2))
End While
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")
End Try
End Using
End Sub
Private Sub ButtonExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonExit.Click
Me.Close()
End Sub
End Class
Anda bisa mendapatkan source code program diatas (bila diperlukan) pada akhir postingan ini, jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda.
Download disini
Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?
Cara Melakukan Paging Datagrid di VB.Net 2008
Diposting oleh T. Erick Sitorus | 02.38 | Aplikasi | 0 komentar »Postingan kali ini mengenai pengaturan data yang ditampilkan berdasarkan halaman per halaman atau paging data. Konsep ini umum kita temui terutama saat menampilkan data dalam jumlah hingga ratusan atau ribuan data. Tentu tidak mungkin kita menampilkan seluruh data tersebut dalam 1 halaman sekaligus.
Solusinya dengan membagi data menjadi beberapa halaman, disini saya akan mencontohkan konsep paging data. Siapkan sebuah database bernama testing dan buat table t_Obat. Berikut penampakan tabelnya.
Buat project baru di VB.Net 2008 beri nama DGPaging dan buat sebuah form untuk menampilkan data. Form yang saya buat tampilannya seperti berikut ini:
Imports System.Data.SqlClient
Public Class FormDG
Dim PA As SqlDataAdapter
Dim DS As DataSet
Dim scrollVal, ShowData, TotalData As Integer
Private Sub Buttonload_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonLoad.Click
Dim connectionString As String = "Data Source=ZHENLONK-342572;Initial Catalog=testing;Integrated Security=True"
Dim sql As String = "SELECT * FROM t_Obat"
Dim koneksi As New SqlConnection(connectionString)
PA = New SqlDataAdapter(sql, koneksi)
DS = New DataSet()
koneksi.Open()
PA.Fill(DS, "Obat")
TotalData = DS.Tables("Obat").Rows.Count()
DS.Clear()
PA.Fill(DS, scrollVal, ShowData, "Obat")
koneksi.Close()
DGObat.DataSource = DS
LabelPage.Text = "1"
LabelTotal.Text = Math.Ceiling(TotalData / ShowData)
DGObat.DataMember = "Obat"
ButtonNext.Enabled = True
ButtonPrev.Enabled = True
End Sub
Private Sub ButtonNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonNext.Click
If Not LabelPage.Text = Math.Ceiling(TotalData / ShowData) Then
scrollVal = scrollVal + ShowData
If scrollVal > TotalData Then
scrollVal = Math.Floor(TotalData / ShowData) * ShowData
End If
LabelPage.Text = Val(LabelPage.Text) + 1
End If
DS.Clear()
PA.Fill(DS, scrollVal, ShowData, "Obat")
End Sub
Private Sub ButtonPrev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPrev.Click
scrollVal = scrollVal - ShowData
If scrollVal <= 0 Then
scrollVal = 0
End If
If Not LabelPage.Text = "1" Then LabelPage.Text = Val(LabelPage.Text) - 1
DS.Clear()
PA.Fill(DS, scrollVal, ShowData, "Obat")
End Sub
Private Sub FormDG_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ShowData = 6
LabelPage.Text = "n"
LabelTotal.Text = "m"
End Sub
Private Sub ButtonExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonExit.Click
Me.Close()
End Sub
End Class
Bila anda hendak download source code program diatas, jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda.Download disini
Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?
Mengeksport Data di Datagrid ke Format XML di VB.Net 2008
Diposting oleh T. Erick Sitorus | 04.39 | Aplikasi | 0 komentar »Postingan kali ini kita akan mengeksport data yang ada di Datagrid menjadi file XML. File XML sekarang umum digunakan untuk pertukaran data di Internet karena pemrosesannya yang mudah dan cepat.
Langsung to the point aja...
Seperti biasa, persiapkan sebuah database bernama testing dan buat table tbl_konsumen. Berikut penampakan tabel tbl_konsumen. (Script SQL query dapat didownload di akhir postingan).
Untuk proses input - edit - delete data saya anggap anda sudah paham, pembahasan tentang ini ada di postingan sebelumnya yaitu Simple Proses Input - Edit - Delete Data Dengan VB.Net 2008 dan SQL Server 2008.
Sekarang fokus di tombol Create XML (lihat gambar diatas). Untuk kode eksport data di datagrid ke XML saya menggunakan ini :
Sub XMLFile()
With FormXML
Try
If My.Computer.FileSystem.FileExists("../../XML/datakonsumen.xml") Then
MsgBox("File XML Sudah Ada..!")
Exit Sub
Else
Dim settings As New XmlWriterSettings()
settings.Indent = True
settings.IndentChars = " "
Using writer As XmlWriter = XmlWriter.Create("../../XML/datakonsumen.xml", settings)
writer.WriteComment("XML Files datakonsumen")
writer.WriteStartElement("dataset")
writer.WriteStartElement("DataKonsumen")
writer.WriteComment("Start datakonsumen")
For rowIndex As Integer = 0 To .DataGridKonsumen.Rows.Count - 1 Step 1
writer.WriteElementString("perusahaan", .DataGridKonsumen.Item(0, rowIndex).Value)
writer.WriteElementString("contactperson", .DataGridKonsumen.Item(1, rowIndex).Value)
writer.WriteElementString("phone", .DataGridKonsumen.Item(2, rowIndex).Value)
writer.WriteElementString("alamat", .DataGridKonsumen.Item(3, rowIndex).Value)
Next
writer.WriteComment("End datakonsumen")
writer.WriteEndElement()
writer.WriteEndElement()
writer.WriteEndDocument()
writer.Flush()
writer.Close()
MsgBox("File XML Data Konsumen Berhasil dibuat..!")
End Using
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")
End Try
End With
End Sub
Lokasi file XML ("../../XML/datakonsumen.xml") akan ditempatkan di folder XML, berada di path yang sama dengan file-file penyusun obyek VB.Net. Bila anda pernah menggunakan VB 6, maka alamat ("../../XML/datakonsumen.xml") sama seperti menggunakan app.path.Source code program dapat didownload di akhir postingan ini. Jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda (lihat di file ModulKoneksi.vb.)
Download disini
Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?
Validasi Data Menggunakan Regular Expression / Regex di VB.Net 2008
Diposting oleh T. Erick Sitorus | 05.54 | Aplikasi | 1 komentar »Regular Expression atau Regex memungkinkan anda menguraikan teks secara mudah untuk mengikuti suatu pola teks tertentu. Regex umumnya digunakan untuk memvalidasi suatu inputan / data agar sesuai dengan pola yang diinginkan. Dalam .NET Framework disediakan namespace System.Text.RegularExpressions untuk mendukung penggunaan Regex.
Contoh sederhana misalkan kita ingin data inputan berupa data numerik, maka ekspresinya [0-9] atau \d. Jika kita ingin data inputan berupa huruf kapital dan angka, maka ekspresinya [0-9A-Z].
Berikut adalah contoh syntax perintah dari Regex:
1. [abc] => hanya karakter a,b dan c saja yang diijinkan.
2. [^abc] => karakter apa saja boleh kecuali a,b dan c.
3. [0-9] => karakter yang diijinkan angka 0 hingga 9, sama dengan \d.
4. \w => Semua karakter diijinkan, sama dengan [a-zA-Z_0-9].
5. \W => Kebalikan dari \w. Hanya karakter simbol yang diijinkan.
6. \d => Karakter numerik yang diijinkan
7. \D => Karakter numerik tidak diijinkan
8. \n => baris baru
9. \t => Tab
10. * => Terdapat 0 atau lebih karakter yang sesuai.
11. + => Terdapat minimal 1 atau lebih karakter yang sesuai.
12. ? => Terdapat 0 atau 1 karakter yang sesuai.
13. +? => Terdapat pengulangan setidaknya 1 kali.
14. {n} => Terdapat sebanyak n kecocokan dalam string.
15. {n,m} => Terdapat minimal n kecocokan namun tidak lebih dari m.
16. . => Tanda Titik berarti Semua Karakter diijinkan.
Sebenarnya masih ada lagi contoh syntaxnya, namun diatas adalah yang umum digunakan. Setiap ekspresi Regex harus diawali dengan ^ dan diakhiri $.
Berikut contoh ekspresi Regex untuk tahun kelahiran yang valid :
"^(18)|(19)|(20)\d\d$"
Penjelasan :
^ berarti awal dari ekspresi
(18)|(19)|(20) berarti tahun diawali oleh angka 18, 19 atau 20
\d berarti diikuti karakter numerik
$ berarti akhir dari ekspresi
Sekarang saya akan coba menggunakan metode Regex ini untuk validasi data. Kali ini saya membuat sebuah Form seperti berikut ini :
apabila user memasukkan nilai secara sembarang, maka akan tampil message yang menyatakan tidak valid. Berikut ini contoh kode untuk Regex valid tahun :
Function ValidTahun(ByVal str As String)
Return Regex.IsMatch(str, "^(18)|(19)|(20)\d\d$")
End Function
Kalau ada yang mau source code lengkap program diatas (ngarep, hehehe) dapat didownload di akhir postingan ini.
Download disini
Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?
Daftar Program PTC Terpercaya
Diposting oleh T. Erick Sitorus | 06.50 | Pay Per Click | 0 komentar »Simple Proses Input - Edit - Delete Data Dengan VB.Net 2008 dan SQL Server 2008
Diposting oleh T. Erick Sitorus | 05.50 | Aplikasi | 2 komentar »Bila kita membuat aplikasi desktop yang memakai database, tentu kita akan bekerja dengan proses Input, Edit dan Delete data. Nah, di postingan kali ini kita akan membuat contoh proses tersebut dengan memakai database SQL Server 2008.
Seperti biasa siapkan dulu contoh tabel database yang akan digunakan. Sebagai contoh kita akan bermain dengan nama-nama obat. Nama databasenya testing dan nama tabelnya obat. Berikut penampakan tabel obat : (Script SQL query dapat didownload di akhir postingan).
Buat Project baru di VB.Net 2008 dab berinama ProsesDataObat. Berikut tampilan Tab Solution Explorernya :
Sebagai awal, rename form1 menjadi FormObat. Kira-kira form yang saya buat seperti berikut ini :
Public koneksi As SqlConnection = Nothing
Public cmd As SqlCommand = Nothing
Public Sub koneksiDB()
Dim connString As String = "Data Source=ZHENLONK-342572;Initial Catalog=testing;Integrated Security=True"
Try
koneksi = New SqlClient.SqlConnection(connString)
koneksi.Open()
koneksi.Close()
Catch ex As Exception
MessageBox.Show("Database Connection Error : " & ex.Message)
End Try
End Sub
Pada Form buat proses untuk load data ke FormObat. Intinya Pada saat Form Load, maka data di database akan di Load ke FormObat. Berikut ini contohnya:
Sub getDataFromDB(ByVal i As Integer)
koneksiDB()
Try
koneksi.Open()
DS_Obat = New DataSet
sql = "SELECT * FROM obat"
DA_Obat.SelectCommand = New SqlClient.SqlCommand(sql, koneksi)
DA_Obat.Fill(DS_Obat, "obat")
RowNumber = i
koneksi.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Sub DaftarObat()
If DS_Obat.Tables("obat").Rows.Count = 0 Then
MsgBox("Data Obat di Database Masih Kosong", MsgBoxStyle.Exclamation, "Pesan Program")
Exit Sub
End If
Me.TextBoxKodeObat.Text = DS_Obat.Tables("obat").Rows(RowNumber)("kd_obat").ToString
Me.TextBoxNamaObat.Text = DS_Obat.Tables("obat").Rows(RowNumber)("nama").ToString
Me.ComboBoxJenisObat.Text = DS_Obat.Tables("obat").Rows(RowNumber)("jenis").ToString
Me.TextBoxStok.Text = DS_Obat.Tables("obat").Rows(RowNumber)("stok").ToString
Me.TextBoxSatuan.Text = DS_Obat.Tables("obat").Rows(RowNumber)("satuan").ToString
Me.TextBoxHargaBeli.Text = DS_Obat.Tables("obat").Rows(RowNumber)("hargabeli").ToString
Me.TextBoxHargaJual.Text = DS_Obat.Tables("obat").Rows(RowNumber)("hargajual").ToString
End Sub
Berikutnya adalah tombol operasi data, namun untuk ini saya membuat 1 file modul khusus yaitu ModulFormObat.vb yang khusus untuk kode Operasi data (Lihat Solution Explorer). Pertama input data. Berikut adalah kode input data yang saya gunakan.
Sub SaveData()
With FormObat
Try
If .TextBoxNamaObat.Text = "" Then MsgBox("Nama Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
If .TextBoxStok.Text = "" Then MsgBox("Stok Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
If .TextBoxHargaBeli.Text = "" Then MsgBox("Harga Beli Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
If .TextBoxHargaJual.Text = "" Then MsgBox("Harga Jual Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
sql = "INSERT INTO obat VALUES ('" & .TextBoxKodeObat.Text & "', '" & .TextBoxNamaObat.Text & "', '" & .ComboBoxJenisObat.Text & "', '" & .TextBoxSatuan.Text & "', '" & .TextBoxStok.Text & "', '" & .TextBoxHargaBeli.Text & "','" & .TextBoxHargaJual.Text & "')"
cmd = New SqlClient.SqlCommand(sql)
cmd.Connection = koneksi
koneksi.Open()
cmd.ExecuteNonQuery()
koneksi.Close()
MsgBox("Data Obat " & .TextBoxNamaObat.Text & " Berhasil Disimpan", MsgBoxStyle.Information, "Pesan Program")
.LoadData()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")
End Try
End With
End Sub
Kedua untuk Edit data, berikut adalah contoh kode yang saya gunakan.
Sub EditData()
With FormObat
Try
If .TextBoxNamaObat.Text = "" Then MsgBox("Nama Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
If .TextBoxStok.Text = "" Then MsgBox("Stok Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
If .TextBoxHargaBeli.Text = "" Then MsgBox("Harga Beli Obat Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
If .TextBoxHargaJual.Text = "" Then MsgBox("Harga Jual Harus Diisi..!", MsgBoxStyle.Critical, "Pesan Kesalahan") : Exit Sub
sql = "UPDATE obat SET nama='" & .TextBoxNamaObat.Text & "', " _
& "jenis = '" & .ComboBoxJenisObat.Text & "', " _
& "satuan = '" & .TextBoxSatuan.Text & "', " _
& "stok = '" & .TextBoxStok.Text & "', " _
& "hargabeli = '" & .TextBoxHargaBeli.Text & "', " _
& "hargajual = '" & .TextBoxHargaJual.Text & "' " _
& "WHERE kd_obat = '" & .TextBoxKodeObat.Text & "'"
cmd = New SqlClient.SqlCommand(sql)
cmd.Connection = koneksi
koneksi.Open()
cmd.ExecuteNonQuery()
koneksi.Close()
MsgBox("Data Obat " & .TextBoxNamaObat.Text & " Berhasil DiUpdate", MsgBoxStyle.Information, "Pesan Program")
.LoadData()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")
End Try
End With
End Sub
Dan terakhir yaitu untuk Delete Data.
Sub DeleteData()
With FormObat
Try
Dim hapus As Integer
Dim Sql As String
hapus = MsgBox("Anda Yakin Ingin Menghapus Data Obat " & .TextBoxNamaObat.Text & " ini?", MsgBoxStyle.OkCancel, "Info Program")
Select Case hapus
Case vbCancel
Exit Sub
Case vbOK
Sql = "DELETE FROM obat WHERE kd_obat = '" & .TextBoxKodeObat.Text & "'"
cmd = New SqlClient.SqlCommand(Sql)
cmd.Connection = koneksi
koneksi.Open()
cmd.ExecuteNonQuery()
koneksi.Close()
MsgBox("Data Berhasil Dihapus", MsgBoxStyle.Information, "Info Program")
.LoadData()
End Select
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Information, "Pesan Kesalahan")
End Try
End With
End Sub
Sedangkan untuk navigasi datanya, berikut adalah contoh kode yang saya gunakan.
Private Sub ButtonFirst_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonFirst.Click
RowNumber = 0
Me.DaftarObat()
End Sub
Private Sub ButtonPrev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPrev.Click
If RowNumber = 0 Then
MsgBox("Anda Berada di Data Paling Awal", MsgBoxStyle.Information, "Info Program")
Else
RowNumber -= 1
Me.DaftarObat()
End If
End Sub
Private Sub ButtonNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonNext.Click
If RowNumber = DS_Obat.Tables("obat").Rows.Count - 1 Then
MsgBox("Anda Berada di Data Paling Akhir", MsgBoxStyle.Information, "Info Program")
Else
RowNumber += 1
Me.DaftarObat()
End If
End Sub
Private Sub ButtonLast_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonLast.Click
RowNumber = DS_Obat.Tables("obat").Rows.Count - 1
Me.DaftarObat()
End Sub
Untuk tombol Search buat Form baru dengan nama FormDataGrid. Berikut adalah tampilan Formnya :
Jadi, saat data terlalu banyak, user bisa memilih menggunakan Datagrid dengan klik pada cell atau double klik di baris data yang anda inginkan. Berikut adalah contoh kode saat user melakukan klik untuk pemilihan data:
Private Sub DataGridFullData_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridFullData.DoubleClick
FormObat.getDataFromDB(DataGridFullData.CurrentCell.RowIndex)
FormObat.DaftarObat()
Me.Close()
End Sub
Anda sebenarnya bisa download source code program di akhir artikel ini. Jangan lupa untuk menyesuaikan nama server databasenya dengan nama server SQL Server di komputer / laptop anda (lihat di ModulKoneksi.vb.)
Download Disini
Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?
Menghapus Virus Shortcut + Recycler (Ramnit - WaterMark.exe)
Diposting oleh T. Erick Sitorus | 08.07 | Lainnya | 0 komentar »Beberapa hari lalu di Warnet dekat kampus, saya kaget Flashdisk Jetflash saya telah disusupi oleh file tidak dikenal yang saat itu saya sebut Virus Shortcut + Recycler.
Virus ini membuat 4 file yang bernama Copy of Shortcut to (1).lnk, Copy of Shortcut to (2).lnk, Copy of Shortcut to (3).lnk dan Copy of Shortcut to (4).lnk. Virus ini juga membuat folder Recycler yang berisi folder bernama acak. Folder acak tersebut juga diisi oleh file-file acak yang otomatis dibuat secara terus menerus sehingga membuat komputer terasa lambat. Berikut penampakannya :
Dengan sikap sok jagoan saya coba menantang virus ini dengan mencolok flashdisk terinfeksi itu ke komputer rumah, otomatis virus pun menjalar ke komputer.
Besoknya saya install NO*32 dan virus pun terdeteksi sebagai Ramnit, ternyata NO*32 tidak mampu membersihkan virus ini, ia hanya menghapus file yang terinfeksi virus.
Virus ternyata bisa diakali dengan baca file autorun.inf dan rename nama file tujuan. Lalu buat file .exe lain dengan nama file tujuan virus tadi. Otomatis saat flashdisk dicolok ia akan mengeksekusi file .exe buatan kita. Namun virus masih eksis, ditandai saat saya colok flashdisk kosong maka Flashdisk terinfeksi.
Untuk antisipasi saya pun mengimport file backup registry dan benar saja, virus masih eksis. Waduuh...
Saya coba pakai Smad**, hasilnya system scan mendeteksi ada registry value yang dicurigai yaitu di HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\ dengan value name Userinit dan value yang dicurigai adalah path C:\Program Files\WaterMark.exe.
Benar saja, pada properties file WaterMark.exe disebut file dibuat dengan tanggal kemarin. Ini dia pembuat masalahnya.
File ini tidak bisa dihapus karena sedang active. Solusi berikutnya panggil Task Manager dan ternyata tidak ada nama proses WaterMark.exe. Terpaksa browsing internet untuk cari cara menghapusnya.
Ketemu, ternyata nama prosesnya svchost.exe yang usernamenya pakai nama komputer kita. Benar saja WaterMark.exe bisa dihapus. Namun masalah belum selesai, saat komputer restart si WaterMark.exe eksis lagi. Mesti browsing lagi...
Solusinya ternyata dengan membuat folder WaterMark.exe sebagai tandingan di C:\Program Files\Microsoft. Bila perlu buat folder con didalam folder WaterMark.exe agar tidak bisa asal dihapus / ditimpa. Berikut kronologinya :
1. Melalui Task Manager, hentikan proses svchost.exe yang usernamenya nama komputer.
2. Hapus file WaterMark.exe di path C:\Program Files\Microsoft\
3. Panggil Command Prompt dan arahkan ke path C:\Program Files\Microsoft\
4. Ketikan md WaterMark.exe lalu Enter
5. Ketikan lagi cd WaterMark.exe
6. Ketikan lagi md con\\
Selesai... Virus Ramnit (WaterMark.exe) atau Shortcut + Recycler (versi saya) sudah tidak eksis lagi.
Baca juga di blog ini :
Anda ingin dapat uang dengan hanya menjawab survey..?
IDR CLICKIT, Klik-klik dapat Uang yang Terpercaya
Diposting oleh T. Erick Sitorus | 06.57 | Pay Per Click | 0 komentar »[ Situs ini telah ditutup ]