//RUNAS//硬件温度
import win.ui;
/*DSG{{*/
var mainForm = win.form(text="aardio 利用开源库OpenHardwareMonitor获取CPU或显卡温度";right=791;bottom=699)
mainForm.add(
edit={cls="edit";left=8;top=4;right=787;bottom=696;db=1;dl=1;dr=1;dt=1;edge=1;hscroll=1;multiline=1;vscroll=1;z=1}
)
/*}}*/

/*
请右键点击 sys.openHardwareMonitor 
在弹出菜单内点「转到定义 / 文件」查看库源码。

这是一个调用 .Net 开源组件（OpenHardwareMonitorLib.dll）的演示。
aardio 可以内存加载 .Net 生成的 DLL 程序集，并生成独立 EXE 文件。
自动兼容 .Net 2.0 以上所有运行时（WIN7 以上系统都自带）。
*/
import sys.openHardwareMonitor; 
var computer = sys.openHardwareMonitor.computer();

computer.enumHardware(function(hardwareItem,path,index){
	hardwareItem.Update()
	mainForm.edit.print( path + hardwareItem.Name,hardwareItem.HardwareTypeString );
	
	for i,sensor in hardwareItem.eachSensors(){       
		mainForm.edit.print(path+'\t',sensor.Name,sensor.ValueString,sensor.MaxString,sensor.SensorTypeString )
	}	
	
	return path + '\t';	
},"")

mainForm.show() 
win.loopMessage();