반응형
* C# WMI 를 이용한 하드 디스크 온도 체크 예제 (HDD Temperature)
- WMI 를 사용하기 위해 참조 -> System.Management dll 을 추가 -> 소스 코드 using System.Management
전체 소스 코드
Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Management;
namespace CSharp_HDDTemperature
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//타이머 시간 1초
timer1.Interval = 1000;
}
protected override void OnClosed(EventArgs e)
{
timer1.Stop();
base.OnClosed(e);
}
private void Button1_Click(object sender, EventArgs e)
{
timer1.Start();
}
void HDDTemperatrue()
{
//WMI 테이블명
string diskTemperature = "MSStorageDriver_ATAPISmartData";
try
{
//WMI 쿼리
ManagementObjectSearcher mos = new ManagementObjectSearcher(@"root\WMI", "Select * From " + diskTemperature);
foreach (System.Management.ManagementObject mo in mos.Get())
{
byte[] data = (byte[])mo.GetPropertyValue("VendorSpecific");
diskTemperature = data[3].ToString();
Label1.Text = diskTemperature.ToString();
}
}
catch
{
diskTemperature = "";
}
}
private void timer1_Tick(object sender, EventArgs e)
{
HDDTemperatrue();
}
}
}
*예제 결과
https://kdsoft-zeros.tistory.com/153
반응형
'C# Programming' 카테고리의 다른 글
[C#] [WMI] 네트워크 IP 및 Subnet, Gateway Set (0) | 2020.02.28 |
---|---|
[C#] [WMI] 네트워크 IP 및 Subnet , Gateway 얻어오기 (0) | 2020.02.26 |
[C#] Provider - 로컬 네트워크에 사용가능한 OLEDB 공급자 (0) | 2020.02.22 |
[C#] 윈도우 폼(Window Form) - Control, Shift , Alt 키 조합 키 입력 받기 (단축키) (0) | 2020.02.19 |
[C#] 윈도우 폼 (Window Form) - 투명도(Opacity ) 조절 (0) | 2020.02.17 |