|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
//----------------------------------------------------------
// Viene creato un oggetto OLEObject, ci si connette all'oggetto,
// si passa all'oggetto la funzione desiderata che restituisce alcuni
// valori che devono essere memorizzati in un array 'la_processore'
// di tipo Any.
//
// Volutamenteil risultato viene emesso in uno static text di una window;
// analogamente il vettore dei risultati può essere gestito anche come
// array di ritorno di una funzione (vedere altro script per passaggio array)
//
Any la_processore[]
//
OLEObject ole_processore
ole_processore = CREATE OLEObject
ole_processore.ConnectToNewObject("MSScriptControl.ScriptControl")
ole_processore.Language = "vbscript"
ole_processore.AddCode('Function rtnProcessor()~r~n' &
+ 'DIM objProcessor(3)~r~n' &
+ 'strComputer = "."~r~n' &
+ 'Set objWMIService =' &
+ ' GetObject("winmgmts:\\" & strComputer & "\root\cimv2")~r~n' &
+ 'Set colItems =' &
+ ' objWMIService.ExecQuery("Select * from Win32_Processor")~r~n' &
+ 'For Each objItem in colItems~r~n' &
+ 'objProcessor(0) = objItem.ProcessorId~r~n' &
+ 'objProcessor(1) = objItem.MaxClockSpeed~r~n' &
+ 'objProcessor(2) = objItem.Name~r~n' &
+ 'objProcessor(3) = objItem.Description~r~n' &
+ 'Next~r~n' &
+ 'rtnProcessor = objProcessor~r~n' &
+ 'End Function')
la_processore[] = ole_processore.Eval ("rtnProcessor")
ole_processore.DisconnectObject()
DESTROY ole_processore
st_processore.text = "Processore - Identificativo : " + string(la_processore[1]) + "~r~n" + &
+ "Processore - Velocità Massima del Clock : " + string(la_processore[2]) + "~r~n" + &
+ "Processore - Nome : " +string(la_processore[3]) + "~r~n" + &
+ "Processore - Descrizione : " + string(la_processore[4])
//----------------------------------------------------------
|