Hola,
estoy tratando de leer el Nº de serie de la placa base de cualquier ordenador con WMI (teoricamente, todos desde W2000).
Se que Neftali tiene unos fantasticos componentes, pero, los he descargado y parece que solo están para Delphi2007 (no he probado a instalar y testear en Delphi2010) y, además, es que solo quiero saber el id de la placa.
Esto es lo que tengo (tras importar la libreria de tipos -type library-):
Código Delphi
[-]function GetMotherBoardSerial:string;
var
WMIServices : ISWbemServices;
Root : ISWbemObjectSet;
Item : Variant;
begin
WMIServices := CoSWbemLocator.Create.ConnectServer('.', 'root\cimv2','', '', '', '', 0, nil);
Root := WMIServices.ExecQuery('Select SerialNumber From Win32_BaseBoard','WQL', 0, nil);
Item := Root.Item('Base Board',0); <<--- aquí el error...
Result:=VarToStr(Item.SerialNumber);
end;
En la línea que marca el error, ya he probado de todo. El código está recogido de algún sitio (que no consigo encontrar de nuevo).
A ver si a alguien se le ocurre algo.
Saludos y gracias anticipadas.