سؤال

أي نوع من معرفات النظام "الفريدة" التي يمكن الحصول عليها بسهولة باستخدام C # (إلى التجزئة ثم تحديد نظام) بشكل فريد)؟ يمكنني فقط إزالة حجم HDD والأشياء من هذا القبيل، لكنني بحاجة إلى تحديد وتمييز أجهزة الكمبيوتر التي تم بناؤها بواسطة نفس المكونات حتى لا أذهب إليها.

نقدر تلميحات وأفكار وعينة من التعليمات البرمجية!

هل كانت مفيدة؟

المحلول

ها هي بداية جيدة مع WMI ...

// Win32_CPU will work too
var search = new ManagementObjectSearcher( "SELECT * FROM Win32_baseboard" );
var mobos = search.Get();

foreach (var m in mobos)
{
  var serial = m["SerialNumber"]; // ProcessorID if you use Win32_CPU
}

يمكنك أن تفعل ذلك مع العديد من قطع الأجهزة والتوصل إلى حل.

نصائح أخرى

يمكنك استعمال ال ادارة النظام مساحة الاسم للحصول على جميع الاشياء المتعلقة بالأجهزة ومعالجات ProcolorID و MAC، ومزيد من المعلومات التي يمكنك بها بعد ذلك.

نلقي نظرة على هذه المادة:

http://www.codeproject.com/kb/system/gethardwareInformation.aspx.

يفترض أنك تتحدث عن Windows، ثم يحتوي كل تثبيت Windows على معرف منتج فريد (يمكنك أن ترى عند عرض خصائص جهاز الكمبيوتر الخاص بي). أعتقد أن هذا يتم تخزينه HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion:ProductId(REG_SZ). وبعد أنا أعتبر أنك تريد أكثر من ذلك؟

يمكنك استخدام WMI مع C # للحصول على القليل من المعلومات حول الأجهزة.

تعد معرفات القرص الصلب وعنوان Ethernet MAC معرفين فريدين مشتركين يستخدمان في مخططات تحديد النظام. عنوان MAC هو، من الناحية النظرية، فريدة من نوعها لكل بطاقة شبكة.

عنوان بطاقة شبكة MAC:

foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces())
{
    // probably need to do some filtering on ni.NetworkInterfaceType here
    Console.WriteLine(ni.GetPhysicalAddress());
}

يمكنك أن تنظر في استخدام جيد

ما هو guid

بالنسبة لأولئك الذين لا يعرفون، فإن GUID (Goo'ID وضوحا - معرف فريد من نوعه العالمي) هو عدد صحيح 128 بت يمكن استخدامه لتحديد شيء فريد. يمكنك تخزين المستخدمين أو المنتجات في قاعدة البيانات الخاصة بك وأنت تريد أن تحدد كل صف كله بطريقة أو بأخرى بشكل فريد في قاعدة البيانات. يتمثل النهج المشترك في إنشاء عدد صحيح تلقائي، وسوف تكون هناك طريقة أخرى لإنشاء GUID لمنتجاتك.

كيفية إنشاء GUID في C #

يمكن العثور على طريقة GUID في مساحة اسم النظام. طريقة GUID System.guid.newguid () تهيئة مثيل جديد من فئة GUID.

هناك أيضا عدد قليل من الحملات الزائدة المتاحة لأولئك الذين يريدون من تنسيق GUID بطريقة معينة.

سيتم إخراج العينة الحية التالية الناتجة عن GUID، كما أن التعليمات البرمجية المصدر هي أيضا أدناه.

Response.Write(@"<br>System.Guid.NewGuid().ToString() = " + System.Guid.NewGuid().ToString());
Response.Write(@"<br>System.Guid.NewGuid().ToString(""N"") = " + System.Guid.NewGuid().ToString("N"));
Response.Write(@"<br>System.Guid.NewGuid().ToString(""D"") = " + System.Guid.NewGuid().ToString("D"));
Response.Write(@"<br>System.Guid.NewGuid().ToString(""B"") = " + System.Guid.NewGuid().ToString("B"));
Response.Write(@"<br>System.Guid.NewGuid().ToString(""P"") = " + System.Guid.NewGuid().ToString("P"));
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top