Mendapatkan Informasi Mengenai Memori Komputer (RAM) Dengan Visual Basic

Tulisan kali ini kita akan membahas mengenai teknik mendapatkan informasi jumlah memori RAM yang tersedia pada komputer Anda dengan menggunakan Visual Basic. Untuk keperluan ini pada Windows API sudah disediakan suatu fungsi yaitu GlobalMemoryStatus. Fungsi ini berguna untuk mendapatkan informasi mengenai jumlah memori RAM yang tersedia baik itu physical memory dan juga virtual memory. Fungsi GlobalMemoryStatus ini mempunyai sebuah parameter lpBuffer yang bertipe MEMORYSTATUS. Berikut ini adalah deklarasi fungsi GlobalMemoryStatus pada Visual Basic.

Public Declare Sub GlobalMemoryStatus Lib “kernel32” Alias “GlobalMemoryStatus” (lpBuffer As MEMORYSTATUS)

Tipe MEMORYSTATUS adalah suatu struktur yang berisi informasi-informasi mengenai memori RAM komputer. Berikut ini adalah deklarasi dari tipe MEMORYSTATUS pada Visual Basic.

Public Type MEMORYSTATUS
dwLength As Long
dwMemoryLoad As Long
dwTotalPhys As Long
dwAvailPhys As Long
dwTotalPageFile As Long
dwAvailPageFile As Long
dwTotalVirtual As Long
dwAvailVirtual As Long
End Type

Kita lihat di atas bahwa anggota dari tipe MEMORYSTATUS diantaranya adalah:

  • dwLength, digunakan untuk menentukan ukuran dari tipe MEMORYSTATUS. Ini harus diisi sebelum Anda memanggil fungsi GlobalMemoryStatus.
  • dwMemoryLoad, digunakan untuk mendapatkan informasi utilisasi memori saat ini. Satuan dari dwMemoryLoad adalah dalam persen yang nilainya berkisar antara 0 sampai 100.
  • dwTotalPhys, digunakan untuk mengetahui jumlah total dari physical memory dalam satuan bytes.
  • dwAvailPhys, digunakan untuk mengetahui jumlah physical memory yang tersedia saat ini dalam satuan bytes.
  • dwTotalPageFile, digunakan untuk mengetahui jumlah total bytes yang dapat digunakan untuk untuk penyimpanan pada paging file.
  • dwAvailPageFile, digunakan untuk mengetahui jumlah bytes yang tersedia pada paging file.
  • dwTotalVirtual, digunakan untuk mengetahui total bytes yang terdapat pada virtual address space of the calling process.
  • dwAvailVirtual, digunakan untuk mengetahui jumlah bytes yang belum direservasi pada virtual address space of the calling process.

Supaya lebih jelas, penulis sudah membuat contoh aplikasi yang berguna untuk mendapatkan informasi-informasi di atas. Source code-nya bisa Anda download di akhir tulisan ini. Aplikasi tersebut penulis buat dengan Visual Basic 6.0. Secara garis besar program tersebut akan memanggil fungsi GlobalMemoryStatus dan supaya hasilnya terlihat secara real-time maka pemanggilannya dilakukan melalui kontrol Timer sehingga kita bisa memonitor perubahan nilai memori yang tersedia secara real-time. Adapun screen shot aplikasi tersebut dapat Anda lihat sebagai berikut.

OK, sekian dulu tulisan kali ini semoga berguna bagi Anda semua. Anda boleh menyebarluaskan tulisan ini selama Anda juga menyebutkan sumber aslinya. Jika ada saran atau komentar bisa dikirimkan melalui sony-ak@sony-ak.com. Untuk melihat artikel menarik lainnya silakan kunjungi Sony AK Knowledge Center.

Special thanks to Andrea Batina for your excellent EliteSpy+ source code. Also for Esa Ivani, thanks for your support and great love. I miss you girl.

Source code meminfo.zip bisa Anda download di sini.

Mission completed on 22:37 PM.