通过WMI接口中的Win32_MemoryDevice MemoryType不能完全识别,有的机器返回0,需要实现类似CPU-Z直接识别内存种类和内存条数量的功能。
解决方案 »
- 怎么写监控程序
- 如何获得excel 的最 大 的 有效 行 和 列 数???
- 特急, 我现在做一个统计收费员工作量的程序,我是以每个月为单位保存数据的,现在当统计跨月报表时,就要在不同的月表中查找数据...
- 有遇到新问题了,就又来求助大家了!!!!
- 建有一QQ群2044725.为Delphi志同道合的朋友提供个交流空间,有兴趣的可以进来交流,此群为永久固定群,还有15个空位
- 超级菜鸟问题:怎么用SaveDialog控件把memo1 里的内容保存起来啊??————在线等待!!!
- 只怕我想不到,你肯定能做得到!来吧高手.
- 这种技术谁会?
- DELPHI6的 DBchart 控件用法,谢谢,急,马上给分
- DataSource的问题?
- 参数没有默认值!!救命啊!!
- SUIPack.v6.2非试用版无提示信息 界面增强组件包 )免费提供了,想要的顶了!
class Win32_MemoryDevice : Win32_SMBIOSMemory
{
uint16 Access;
uint8 AdditionalErrorData[];
uint16 Availability;
uint64 BlockSize;
string Caption;
uint32 ConfigManagerErrorCode;
boolean ConfigManagerUserConfig;
boolean CorrectableError;
string CreationClassName;
string Description;
string DeviceID;
uint64 EndingAddress;
uint16 ErrorAccess;
uint64 ErrorAddress;
boolean ErrorCleared;
uint8 ErrorData[];
uint16 ErrorDataOrder;
string ErrorDescription;
uint16 ErrorGranularity;
uint16 ErrorInfo;
string ErrorMethodology;
uint64 ErrorResolution;
datetime ErrorTime;
uint32 ErrorTransferSize;
datetime InstallDate;
uint32 LastErrorCode;
string Name;
uint64 NumberOfBlocks;
string OtherErrorDescription;
string PNPDeviceID;
uint16 PowerManagementCapabilities[];
boolean PowerManagementSupported;
string Purpose;
uint64 StartingAddress;
string Status;
uint16 StatusInfo;
string SystemCreationClassName;
boolean SystemLevelAddress;
string SystemName;
};
你是在读取哪个值的时候有问题,给点代码好分析.
{
string BankLabel;
uint64 Capacity;
string Caption;
string CreationClassName;
uint16 DataWidth;
string Description;
string DeviceLocator;
uint16 FormFactor;
boolean HotSwappable;
datetime InstallDate;
uint16 InterleaveDataDepth;
uint32 InterleavePosition;
string Manufacturer;
uint16 MemoryType;
string Model;
string Name;
string OtherIdentifyingInfo;
string PartNumber;
uint32 PositionInRow;
boolean PoweredOn;
boolean Removable;
boolean Replaceable;
string SerialNumber;
string SKU;
uint32 Speed;
string Status;
string Tag;
uint16 TotalWidth;
uint16 TypeDetail;
string Version;
};附件2:
MemoryType
Data type: uint16
Access type: Read-only
Type of physical memory. This property is inherited from CIM_PhysicalMemory.
Value Meaning
0 Unknown
1 Other
2 DRAM
3 Synchronous DRAM
4 Cache DRAM
5 EDO
6 EDRAM
7 VRAM
8 SRAM
9 RAM
10 ROM
11 Flash
12 EEPROM
13 FEPROM
14 EPROM
15 CDRAM
16 3DRAM
17 SDRAM
18 SGRAM
19 RDRAM
20 DDR
21 DDR-2
var
Wmi, Objs, Obj: OleVariant;
Enum: IEnumVariant;
C: Cardinal;
begin
Wmi:= CreateOleObject('WbemScripting.SWbemLocator');
Objs := Wmi.ConnectServer('.','root\cimv2').ExecQuery('Select * from Win32_' + WMIType);
Enum := IEnumVariant(IUnknown(Objs._NewEnum));
Enum.Reset;
Enum.Next(1, Obj, C);
Obj := Obj.Properties_.Item(WMIProperty, 0).Value;
Result := Obj;
end;ShowMessage(GetWMIProperty('PhysicalMemory', 'MemoryType'));