-->

Membuat Aplikasi Sederhana untuk Deteksi Removable Drive dengan VB.Net

halo blogger semuanya, kembali lagi bersama saya guzko di coretan coretan kecil ini yang mudah-mudahan bisa memberikan agan sedikit manfaat.
kali ini saya akan kasi tutorial sederhana bagaimana caranya membuat aplikasi untuk mendeteksi user menginputkan removable drive pada PC.
langsung aja ya gan, kayak begini caranya :
buka VB.Net agan dan ketikkan kode sederhana berikut ini :
deklarasikan kode berikut ini dibagian atas dibawah public class :


Private Const WM_DEVICECHANGE As Integer = &H219
    Private Const DBT_DEVICEARRIVAL As Integer = &H8000
    Private Const DBT_DEVICEREMOVECOMPLETE As Integer = &H8004
    Private Const DBT_DEVTYP_VOLUME As Integer = &H2
    'mendapatkan informasi dari volume yang terdetek
    Private Structure DEV_BROADCAST_VOLUME
        Dim Dbcv_Size As Integer
        Dim Dbcv_Devicetype As Integer
        Dim Dbcv_Reserved As Integer
        Dim Dbcv_Unitmask As Integer
        Dim Dbcv_Flags As Short
    End Structure

kemudian agan ketikkan kode berikut ini, kode berikut akan mendeteksi apakah removable drive diinputkan atau dilepas..

Protected Overrides Sub WndProc(ByRef M As System.Windows.Forms.Message)
        'kode dibawah ini untuk mendeteksi apakah removable drive terpasang dan terlepas
        If M.Msg = WM_DEVICECHANGE Then
            Select Case M.WParam
                'cek jika device telah ditambahkan
                Case DBT_DEVICEARRIVAL
                    Dim DevType As Integer = Runtime.InteropServices.Marshal.ReadInt32(M.LParam, 4)
                    If DevType = DBT_DEVTYP_VOLUME Then
                        Dim Vol As New DEV_BROADCAST_VOLUME
                        Vol = Runtime.InteropServices.Marshal.PtrToStructure(M.LParam, GetType(DEV_BROADCAST_VOLUME))
                        If Vol.Dbcv_Flags = 0 Then
                            For i As Integer = 0 To 20
                                If Math.Pow(2, i) = Vol.Dbcv_Unitmask Then
                                    Dim Usb As String = Chr(65 + i) + ":\"
                                    MsgBox("Removable Drive Terdeteksi" & vbNewLine & vbNewLine & "lokasinya di: " & Usb.ToString)
                                    End If
                            Next
                        End If
                    End If
                    'mengeceka apakah devices telah dilepas
                Case DBT_DEVICEREMOVECOMPLETE
                    Dim DevType As Integer = Runtime.InteropServices.Marshal.ReadInt32(M.LParam, 4)
                    If DevType = DBT_DEVTYP_VOLUME Then
                        Dim Vol As New DEV_BROADCAST_VOLUME
                        Vol = Runtime.InteropServices.Marshal.PtrToStructure(M.LParam, GetType(DEV_BROADCAST_VOLUME))
                        If Vol.Dbcv_Flags = 0 Then
                            For i As Integer = 0 To 20
                                If Math.Pow(2, i) = Vol.Dbcv_Unitmask Then
                                    Dim Usb As String = Chr(65 + i) + ":\"
                                    MsgBox("Removable Drive Dilepas& vbNewLine & vbNewLine & "lokasinya di: " & Usb.ToString)
                                    Exit For
                                End If
                            Next
                        End If
                    End If
            End Select
        End If
        MyBase.WndProc(M)

    End Sub

oke selesai dech gan..., coba agan jalankan hasilnya :





oke dech gan selesai tutorial singkatnya...
kode lengkapnya bisa agan download melalui link yang telah saya sediakan dibawah.
segitu dulu dech gan tutorialnya nanti ane sambung lagi tutorialnya...seeee uuuuu


Click to comment