By | February 23, 2022

คอมพิวเตอร์ทุกเครื่องมีส่วนประกอบที่มีหมายเลขซีเรียลเฉพาะ หมายเลขบางหมายเลขถูกกำหนดเมื่อติดตั้งระบบปฏิบัติการ แต่จริง ๆ แล้วมีบางหมายเลขฝังอยู่ในฮาร์ดแวร์ การใช้ C# ทำให้สามารถรวม serials ที่ฝังไว้หลายชุดเพื่อสร้าง ID คอมพิวเตอร์ที่ไม่ซ้ำกันได้

ทำไมต้องเป็นซีรีย์ที่ไม่ซ้ำใคร? เหตุผลง่ายๆ ก็คือการสร้างแบรนด์ซอฟต์แวร์ให้กับคอมพิวเตอร์เครื่องใดเครื่องหนึ่ง ระบบการออกใบอนุญาตที่อาจไม่ยืดหยุ่น อาจมีประสิทธิภาพมากขึ้นอยู่กับวิธีการใช้งาน

สำหรับบทความนี้ เราจะใช้สอง serials ฮาร์ดไดรฟ์และ CPU ทั้งสองจะได้รับด้วย System.Management คลาส C # ในตัว

หากคุณสร้างโครงการใหม่ใน Visual Studio 2005 (รุ่นใดก็ได้) คุณจะสังเกตเห็นบรรทัด “ใช้ System.Management” ไม่ทำงาน คุณต้องเพิ่มด้วยตนเอง:

  • ไปที่ Solution Explorer
  • คลิกขวาที่การอ้างอิงแล้วคลิก “เพิ่มการอ้างอิง…”
  • ค้นหา System.Management จากแท็บ .Net

เมื่อตั้งค่าแล้ว สามารถรับ ID ฮาร์ดแวร์ได้ง่าย

รหัสฮาร์ดไดรฟ์ขึ้นอยู่กับฮาร์ดไดรฟ์อย่างชัดเจน นี่คือรหัสเทียม:

  • สร้าง ManagementObject ด้วยสตริง “win32_logicaldisk.deviceid=[drive letter here]:”
  • เข้าถึงซีเรียลด้วยดัชนี “VolumeSerialNumber” เช่น disk[“VolumeSerialNumber”] โดยที่ดิสก์คือ ManagementObject

CPU ID นั้นค่อนข้างยืดหยุ่นเช่นกัน คอมพิวเตอร์จำนวนมากในปัจจุบันมีซีพียูมากกว่าหนึ่งตัว คุณใช้อันแรกในตัวอย่างของฉันหรือหลายอัน:

  • สร้าง ManagementObject ด้วยสตริง “win32_processor”
  • ดูโปรเซสเซอร์ที่มีอยู่
  • เข้าถึงคุณสมบัติดังนี้: managObject.Properties[“processorID”]

การรวมเข้าด้วยกันสามารถทำได้ง่ายหรือซับซ้อน เพียงแค่เพิ่มเข้าด้วยกันในแถวก็ใช้ได้ดี สำหรับตัวอย่างของฉัน 0 ที่ซ้ำซ้อนบางส่วนจะถูกลบออกก่อนที่จะมี ID ของไดรฟ์ตัวแรกที่มีอยู่และ CPU ตัวแรก

ลองดูเพื่อดูว่าตัวเลขมีลักษณะอย่างไร