Cari di Blog Ini

Minggu, 16 November 2014

Programming VB.NET : Mengenai Serial Port Part 00

Tulisan ini berkenaan dengan Serial Port, dan apa yang bisa lakukan atau manfaatkan dengan menggunakan VB.NET
Untuk lebih jelasnya silahkkan download di link ini Bila butuh jawaban segera, bisa kirim email ke purwoko.edi*gmail.com, ganti * dengan @

Senin, 31 Maret 2014

VB.NET : Mendapatkan Serial Number, Volume dan Size pada Hard Disk/Flash Disk/CD ROM/DVD ROM

Untuk mengetahui Serial Number, Volume dan Size pada Hard Disk/Flash Disk/CD ROM/DVD ROM menggunakan VB.NET caranya sbb :
Imports System.Reflection
Imports System.IO

Public Class Form1
    Private Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Integer, ByRef lpVolumeSerialNumber As Integer, ByRef lpMaximumComponentLength As Integer, ByRef lpFileSystemFlags As Integer, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Integer) As Integer
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Timer1.Start()
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        LstDrive.Items.Clear()
        LstVolLabel.Items.Clear()
        LstSize.Items.Clear()
        LstDriveType.Items.Clear()
        LstPartitionType.Items.Clear()
        LstVolumeID.Items.Clear()

        Dim allDrives() As IO.DriveInfo = IO.DriveInfo.GetDrives()

        Dim drive As IO.DriveInfo
        LblDriveNumber.Text = allDrives.Count & " Drive(s) detected"
        For Each drive In allDrives

            LstDrive.Items.Add(drive.RootDirectory) '.ToString()

            Try
                LstVolLabel.Items.Add(drive.VolumeLabel) '.ToString()
                LstSize.Items.Add(Format(drive.AvailableFreeSpace / (1024 * 1024), "###,##0 GB") _
                             & " of " & Format(drive.TotalSize / (1024 * 1024), "###,##0 GB") _
                             & " (" & Format(drive.AvailableFreeSpace / drive.TotalSize, "###,##0% used)"))

                If drive.DriveType = IO.DriveType.Removable Then
                    LstDriveType.Items.Add("USB")
                ElseIf drive.DriveType = IO.DriveType.Network Then
                    LstDriveType.Items.Add("Network")
                ElseIf drive.DriveType = IO.DriveType.Fixed Then
                    LstDriveType.Items.Add("HD")
                ElseIf drive.DriveType = IO.DriveType.CDRom Then
                    LstDriveType.Items.Add("CD-ROM")
                ElseIf drive.DriveType = IO.DriveType.Unknown Then
                    LstDriveType.Items.Add("???")
                End If
                LstPartitionType.Items.Add(drive.DriveFormat)
                check_ID(drive.RootDirectory)

            Catch ex As Exception
                LstVolLabel.Items.Add("")
                LstSize.Items.Add("")
                LstDriveType.Items.Add("")
                LstPartitionType.Items.Add("")
                LstVolumeID.Items.Add("")
            End Try

        Next

    End Sub
    Private Sub check_ID(ByVal cur_drive)

        Dim root As String
        Dim volume_name As String
        Dim serial_number As Integer
        Dim max_component_length As Integer
        Dim file_system_flags As Integer
        Dim file_system_name As String
        Dim pos As Integer
        Dim Vol_ID As String
        root = cur_drive.ToString
        'ListBox6.Items.Add(root)
        volume_name = Space(1024)
        file_system_name = Space(1024)

        If GetVolumeInformation(root, volume_name, Len(volume_name), serial_number, max_component_length, file_system_flags, file_system_name, Len(file_system_name)) = 0 Then
            MessageBox.Show("Tidak ada drive atau formatnya salah ( harus pakai tanda :\ )", "Error Getting Information", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
            Exit Sub
        End If

        pos = volume_name.IndexOf(Chr(0))
        volume_name = volume_name.Substring(0, pos)
        Vol_ID = Hex(serial_number.ToString)
        Vol_ID = Microsoft.VisualBasic.Left(Vol_ID, 4) & "-" & Microsoft.VisualBasic.Right(Vol_ID, 4)
        LstVolumeID.Items.Add(Vol_ID)

        pos = file_system_name.IndexOf(Chr(0))
        file_system_name = file_system_name.Substring(0, pos)
    End Sub
End Class

Selamat mencoba :)

Kamis, 20 Februari 2014

Antenna J-Pole untuk Televisi


Setelah menerima beberapa pertanyaan seputar antenna TV tipe J-Pole dan Bazooka, yang kebanyakan merasa sulit membuatnya, saya coba buatkan petunjuk membuat antenna TV yang "semoga" lebih mudah dilakukan.

Persiapkan alat-alat seperti yang ada di gambar 1. Ada yang lupa :) soldernya belum difoto


Saya menggunakan kawat las kuningan sebagai batang antenna. 
Atau boleh pakai kawat tembaga atau kawat pengikat yang berukuran 2 mm.
Panjang yang dibutuhkan adalah sekitar 48 cm


Buat tanda menggunakan spidol pada ukuran 35 cm dari ujung kawat pertama (anggap saja sebelah kiri)


Buat tanda menggunakan spidol pada ukuran 12 cm dari ujung kawat lainnya (anggap saja sebelah kanan)


Maka di bagian tengah akan ada tanda seperti di bawah ini (jarak antara tanda sekitar 1 cm)


Jepit area tersebut menggunakan tang



Lalu tekuk kawatnya menjadi seperti ini


Lakukan penekukan pada kedua sisi sehingga menjadi seperti ini


Siapkan kabel antenna (coax) kupas bagian luarnya sehingga menjadi seperti ini


Hubungkan kabel tersebut ke kawat antenna



Lilit, lalu solder kabel ke kawat



Lindungi sambungan2 tersebut dengan isolasi, lalu pasang dimana anda suka.

Kareana posisi rumah saya termasuk "enak", maka antenna tersebut saya letakkan di atas lemari kamar saja.

Harga batang las kuningan hari ini 20-02-2014 sekitar Rp.12ribu s/d Rp.15 ribu, bisa dibeli di toko besi.

Kemampuan antenna ini lebih baik dari antenna Bazooka karena ada faktor panjang antenna yang 5/8 lambda, sehingga penerimaannya lebih baik dari antenna 1/2 lambda.

selamat mencoba :)