منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : معرفة بيانات الجهاز
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ،،،، 

 المطلوب 
1- معرفة حجم الرام      
2- معرفة حجم الهارد ديسك بالكامل 
واذا امكن معرفة المستخدم والمساحات الفراغة في الهارد ديسك

3- معرفة نوع الهارد ديسك

حجم الرام  textbox1
حجم الهارد texbox2
نوع الهارد  textbox3



 قم برفع المشروع ومع اضافة شاشة Form3  
Imports System.Management

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ' 1. معرفة حجم الرام
        Dim ramSize As Double = GetRAMSize()
        TextBox1.Text = ramSize.ToString() & " GB"

        ' 2. معرفة حجم الهارد ديسك بالكامل والمساحات الفراغية
        Dim diskInfo As String() = GetDiskInfo()
        TextBox2.Text = diskInfo(0)
        TextBox4.Text = diskInfo(1)

        ' 3. معرفة نوع الهارد ديسك
        Dim diskType As String = GetDiskType()
        TextBox3.Text = diskType
    End Sub

    ' 1. معرفة حجم الرام
    Private Function GetRAMSize() As Double
        Dim ramSize As Double = 0
        Dim searcher As New ManagementObjectSearcher("SELECT Capacity FROM Win32_PhysicalMemory")
        For Each queryObj As ManagementObject In searcher.Get()
            ramSize += CDbl(queryObj("Capacity")) / 1024 ^ 3 ' تحويل البايت إلى جيجابايت
        Next
        Return ramSize
    End Function

    ' 2. معرفة حجم الهارد ديسك بالكامل والمساحات الفراغية
    Private Function GetDiskInfo() As String()
        Dim diskSize As String = ""
        Dim freeSpace As String = ""
        Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_LogicalDisk")
        For Each queryObj As ManagementObject In searcher.Get()
            If queryObj("DriveType").ToString() = "3" Then ' 3 يعني الهارد ديسك
                diskSize = queryObj("Size").ToString()
                freeSpace = queryObj("FreeSpace").ToString()
            End If
        Next
        Return {diskSize, freeSpace}
    End Function

    ' 3. معرفة نوع الهارد ديسك
    Private Function GetDiskType() As String
        Dim diskType As String = ""
        Dim searcher As New ManagementObjectSearcher("SELECT MediaType FROM Win32_DiskDrive")
        For Each queryObj As ManagementObject In searcher.Get()
            diskType = queryObj("MediaType").ToString()
        Next
        Return diskType
    End Function
End Class