시스템 ID 읽기

무아   
   조회 1186   추천 2    

BoardIdTest.exe (10.5K), Down : 22, 2019-09

label1.Text = GetMotherBoardID();
label2.Text = GetCpuID();
label3.Text = ComputerSID;
label4.Text = UUID;

 순서로 출력됩니다.

닷넷 4.6 인가 설치되어 있어야 할 겁니다. 윈10 이면 기본으로 설치되어 있을 거구요.




namespace BoardIdTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public static string GetMotherBoardID()
        {
            string mbInfo = String.Empty;
            ManagementScope scope = new ManagementScope("\\\\" + Environment.MachineName + "\\root\\cimv2");
            scope.Connect();
            ManagementObject wmiClass = new ManagementObject(scope, new ManagementPath("Win32_BaseBoard.Tag=\"Base Board\""), new ObjectGetOptions());

            foreach (PropertyData propData in wmiClass.Properties)
            {
                if (propData.Name == "SerialNumber")
                {
                    //mbInfo = String.Format("{0,-25}{1}", propData.Name, Convert.ToString(propData.Value));
                    mbInfo = Convert.ToString(propData.Value);
                    break;
                }
            }
            return mbInfo;
        }
        static private string GetCpuID()
        {
            string cpuInfo = string.Empty;
            ManagementClass mc = new ManagementClass("win32_processor");
            ManagementObjectCollection moc = mc.GetInstances();

            foreach (ManagementObject mo in moc)
            {
                if (cpuInfo == "")
                {
                    //Get only the first CPU's ID
                    cpuInfo = mo.Properties["processorID"].Value.ToString();
                    break;
                }
            }
            return cpuInfo;
        }

        public static string ComputerSID
        {
            get
            {
                string sid = string.Empty;
                string SIDKey = @"SOFTWARE\Microsoft\Windows NT\CurrentVersion";

                RegistryKey baseKey = null;
                if (Environment.Is64BitOperatingSystem)
                {
                    baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64);
                }
                else
                {
                    baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Default);
                }

                RegistryKey key = baseKey.OpenSubKey(SIDKey);

                object keyValue = key.GetValue("ProductId");

                if (keyValue != null)
                {
                    sid = keyValue.ToString();
                }

                key = null;
                keyValue = null;

                return sid;
            }
        }
        public static string UUID
        {
            get
            {
                string uuid = string.Empty;

                ManagementClass mc = new ManagementClass("Win32_ComputerSystemProduct");
                ManagementObjectCollection moc = mc.GetInstances();

                foreach (ManagementObject mo in moc)
                {
                    uuid = mo.Properties["UUID"].Value.ToString();
                    break;
                }

                return uuid;
            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            label1.Text = GetMotherBoardID();
            label2.Text = GetCpuID();
            label3.Text = ComputerSID;
            label4.Text = UUID;
        }

    }

...
짧은글 일수록 신중하게.




PDS
제목Page 6/61
03-21   3713   풀로드l조성빈
2014-04   2665460   회원K
2019-09   1049   무한도전
2019-09   1363   무한도전
2019-09   1516   무한도전
2019-09   1034   광주까나리
2019-09   1132   무한도전
2019-09   1187   무아
2019-09   857   FOXBI
2019-09   1156   무한도전
2019-09   1371   무한도전
2019-09   1496   스캔l민현기
2019-09   1481   무한도전
2019-09   1350   유정호샤콘느
2019-09   1233   무한도전
2019-09   1149   김황중
2019-09   1089   무한도전
2019-08   2128   앙드레준
2019-08   1048   무한도전
2019-08   1123   무한도전
2019-08   1231   제갈기천
2019-08   1088   제갈기천