كيف يمكنني العثور على كمية RAM الفيديو المثبتة من خلال مكالمة WMI؟

StackOverflow https://stackoverflow.com/questions/341243

  •  19-08-2019
  •  | 
  •  

سؤال

هل يعرف أي شخص كيفية الحصول على مقطع فيديو للكمبيوتر الشخصي من مكالمة WMI؟

لقد رأيت مكالمات إلى خاصية AdapterRam الخاصة بكائن Management Win32_VideOconTroller ، ولكن هذا يعطي فقط ذاكرة النظام ، ولا يمثل ذاكرة الوصول العشوائي على الإطلاق.

هل كانت مفيدة؟

المحلول

تبين أنه كان المحول الذي تم إرجاعه ، ومن خلال صدفة مؤسف ، تم استخدام التحويل الخاطئ وأعطى النظام ذاكرة الوصول العشوائي ... على نظامين مختلفين. شكرا لدفعنا للنظر مرة أخرى.

لما يستحق ، في تطبيق C# winforms:

int _ram = 0;

ManagementObjectSearcher searcher = new ManagementObjectSearcher("select AdapterRAM from Win32_VideoController");

foreach (ManagementObject mo in searcher.Get())
{
   var ram = mo.Properties["AdapterRAM"].Value as UInt32?;

   if (ram.HasValue)
   {
      _ram = ((int)ram/1048576);
   }
}

نصائح أخرى

من مستودع البرنامج النصي لـ Microsoft Technet Script Center ضمن "الأجهزة" ثم "الفيديو والعرض" ثم "قائمة خصائص وحدة تحكم الفيديو".

أتصور أنه قد تضطر إلى تحديد شيء ما بين Adapterram و "videomimoryype"

On Error Resume Next

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colItems = objWMIService.ExecQuery _
    ("Select * from Win32_VideoController")

For Each objItem in colItems
    For Each strCapability in objItem.AcceleratorCapabilities
        Wscript.Echo "Accelerator Capability: " & strCapability
    Next
    Wscript.Echo "Adapter Compatibility: " & objItem.AdapterCompatibility
    Wscript.Echo "Adapter DAC Type: " & objItem.AdapterDACType
    Wscript.Echo "Adapter RAM: " & objItem.AdapterRAM
    Wscript.Echo "Availability: " & objItem.Availability
    Wscript.Echo "Color Table Entries: " & objItem.ColorTableEntries
    Wscript.Echo "Current Bits Per Pixel: " & objItem.CurrentBitsPerPixel
    Wscript.Echo "Current Horizontal Resolution: " & _
        objItem.CurrentHorizontalResolution
    Wscript.Echo "Current Number of Colors: " & objItem.CurrentNumberOfColors
    Wscript.Echo "Current Number of Columns: " & objItem.CurrentNumberOfColumns
    Wscript.Echo "Current Number of Rows: " & objItem.CurrentNumberOfRows
    Wscript.Echo "Current Refresh Rate: " & objItem.CurrentRefreshRate
    Wscript.Echo "Current Scan Mode: " & objItem.CurrentScanMode
    Wscript.Echo "Current Vertical Resolution: " & _
        objItem.CurrentVerticalResolution
    Wscript.Echo "Description: " & objItem.Description
    Wscript.Echo "Device ID: " & objItem.DeviceID
    Wscript.Echo "Device Specific Pens: " & objItem.DeviceSpecificPens
    Wscript.Echo "Dither Type: " & objItem.DitherType
    Wscript.Echo "Driver Date: " & objItem.DriverDate
    Wscript.Echo "Driver Version: " & objItem.DriverVersion
    Wscript.Echo "ICM Intent: " & objItem.ICMIntent
    Wscript.Echo "ICM Method: " & objItem.ICMMethod
    Wscript.Echo "INF Filename: " & objItem.InfFilename
    Wscript.Echo "INF Section: " & objItem.InfSection
    Wscript.Echo "Installed Display Drivers: " & _
        objItem.InstalledDisplayDrivers
    Wscript.Echo "Maximum Memory Supported: " & objItem.MaxMemorySupported
    Wscript.Echo "Maximum Number Controlled: " & objItem.MaxNumberControlled
    Wscript.Echo "Maximum Refresh Rate: " & objItem.MaxRefreshRate
    Wscript.Echo "Minimum Refresh Rate: " & objItem.MinRefreshRate
    Wscript.Echo "Monochrome: " & objItem.Monochrome
    Wscript.Echo "Name: " & objItem.Name
    Wscript.Echo "Number of Color Planes: " & objItem.NumberOfColorPlanes
    Wscript.Echo "Number of Video Pages: " & objItem.NumberOfVideoPages
    Wscript.Echo "PNP Device ID: " & objItem.PNPDeviceID
    Wscript.Echo "Reserved System Palette Entries: " & _
        objItem.ReservedSystemPaletteEntries
    Wscript.Echo "Specification Version: " & objItem.SpecificationVersion
    Wscript.Echo "System Palette Entries: " & objItem.SystemPaletteEntries
    Wscript.Echo "Video Architecture: " & objItem.VideoArchitecture
    Wscript.Echo "Video Memory Type: " & objItem.VideoMemoryType
    Wscript.Echo "Video Mode: " & objItem.VideoMode
    Wscript.Echo "Video Mode Description: " & objItem.VideoModeDescription
    Wscript.Echo "Video Processor: " & objItem.VideoProcessor
Next
ManagementObjectSearcher searcher = new ManagementObjectSearcher("select AdapterRAM from 

    Win32_VideoController");

                    foreach (ManagementObject mo in searcher.Get())
                    {                            

                        double MemorySize = Convert.ToDouble(mo.Properties["AdapterRAM"].Value) / 1048576;

                        return MemorySize.ToString();
                    }

لقد ذهبنا بالفعل إلى مسار خاصية AdapterRam ، لكن ذلك كان يمنحنا فقط ذاكرة النظام ، والتي لا علاقة لها بذاكرة الفيديو. هل هناك طريقة أخرى للحصول على ذاكرة الوصول العشوائي بالفيديو؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top