시스템 ID 읽기

무아   
   조회 771   추천 2    

BoardIdTest.exe (10.5K), Down : 20, 09-13

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 2/58
2014-04   2552426   회원K
10-11   901   허인구마틴
09-23   654   무한도전
09-21   648   무한도전
09-20   646   무한도전
09-19   610   무한도전
09-18   741   무한도전
09-17   715   무한도전
09-17   554   광주까나리
09-16   578   무한도전
09-13   772   무아
09-16   478   FOXBI
09-10   756   무한도전
09-09   694   무한도전
09-07   795   스캔l민현기
09-06   697   무한도전
09-06   612   유정호샤콘느
09-04   741   무한도전
09-04   591   김황중
09-03   629   무한도전
08-31   1040   앙드레준
08-30   673   무한도전