PDA

View Full Version : سوال: نحوه شناسایی درایو و شماره سریال یک درایو



quantomquery
چهارشنبه 24 آذر 1389, 10:25 صبح
با سلام خدمت دوستان عزیز

می خواستم بدونم چطور می شه همه درایو های هارد دیسک رو به همراه سریال نامبرشون لیست کنم ؟
آیا باید از کامپوننت خاصی استفاده کرد یا توی دات نت فریم وورک هست .

ممنون

ahrimaneahurai
چهارشنبه 24 آذر 1389, 11:24 صبح
سلام
با wmi می تونید به تمام اطلاعات سخت افزار دسترسی پیدا کنید


using System;
using System.Management;
using System.Windows.Forms;

namespace WMISample
{
public class MyWMIQuery
{
public static void Main()
{
try
{
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_DiskDrive");

foreach (ManagementObject queryObj in searcher.Get())
{
Console.WriteLine("-----------------------------------");
Console.WriteLine("Win32_DiskDrive instance");
Console.WriteLine("-----------------------------------");
Console.WriteLine("SerialNumber: {0}", queryObj["SerialNumber"]);
}
}
catch (ManagementException e)
{
MessageBox.Show("An error occurred while querying for WMI data: " + e.Message);
}
}
}
}

quantomquery
جمعه 26 آذر 1389, 17:14 عصر
سلام
با wmi می تونید به تمام اطلاعات سخت افزار دسترسی پیدا کنید


using System;
using System.Management;
using System.Windows.Forms;

namespace WMISample
{
public class MyWMIQuery
{
public static void Main()
{
try
{
ManagementObjectSearcher searcher =
new ManagementObjectSearcher("root\\CIMV2",
"SELECT * FROM Win32_DiskDrive");

foreach (ManagementObject queryObj in searcher.Get())
{
Console.WriteLine("-----------------------------------");
Console.WriteLine("Win32_DiskDrive instance");
Console.WriteLine("-----------------------------------");
Console.WriteLine("SerialNumber: {0}", queryObj["SerialNumber"]);
}
}
catch (ManagementException e)
{
MessageBox.Show("An error occurred while querying for WMI data: " + e.Message);
}
}
}
}

این مثال ارور می ده :
Error 1 The type or namespace name 'ManagementObjectSearcher' could not be found (are you missing a using directive or an assembly reference?)

ایا باید رفرنس خاصی رو اد کنم ؟

MBM-MBM
جمعه 26 آذر 1389, 17:24 عصر
سلام
من از این کد استفاده می کنم


System.Management.ManagementClass physicalMedia = new System.Management.ManagementClass("Win32_PhysicalMedia");
foreach (System.Management.ManagementObject physicalMedium in physicalMedia.GetInstances())
{
TxtLockCode.Text = Convert.ToString(physicalMedium["SerialNumber"]);
}

حلقه foreach باعث می شود تک تک سریال دستگاههای موجود استخراج شود

ahrimaneahurai
جمعه 26 آذر 1389, 18:21 عصر
باید از رفرنس ها managment رو اضافه کنی

quantomquery
یک شنبه 28 آذر 1389, 18:53 عصر
باید از رفرنس ها managment رو اضافه کنی

اینم جواب نداد :گریه:

quantomquery
یک شنبه 28 آذر 1389, 19:07 عصر
سلام
من از این کد استفاده می کنم


System.Management.ManagementClass physicalMedia = new System.Management.ManagementClass("Win32_PhysicalMedia");
foreach (System.Management.ManagementObject physicalMedium in physicalMedia.GetInstances())
{
TxtLockCode.Text = Convert.ToString(physicalMedium["SerialNumber"]);
}

حلقه foreach باعث می شود تک تک سریال دستگاههای موجود استخراج شود



فایلو گذاشتم
خطا هاشو ببینید .
بازم همینه

MBM-MBM
یک شنبه 28 آذر 1389, 20:04 عصر
شرمند یادم رفت بگم
در refrence ها هم باید system.managment رو اضافه کنی

quantomquery
دوشنبه 29 آذر 1389, 07:22 صبح
شرمند یادم رفت بگم
در refrence ها هم باید system.managment رو اضافه کنی

ای ول کارکرد

حالا یه چیز دیگه
خروجی ن اینه که توی تکست باکس گرفتم :

2020202020202020202020205236485938454837 *** 2GEYREZ5 *** *** *** ***

که به ازای هر درایو (یا حلقه فور ایچ) *** گذاشتم تا جدا بشه

چرا اینجوری داد ؟
اگه بخوام ببینم سریال نامبر درایو دی من چنده چکار باید بکنم ؟

quantomquery
سه شنبه 30 آذر 1389, 19:03 عصر
ای ول کارکرد

حالا یه چیز دیگه
خروجی ن اینه که توی تکست باکس گرفتم :

2020202020202020202020205236485938454837 *** 2GEYREZ5 *** *** *** ***

که به ازای هر درایو (یا حلقه فور ایچ) *** گذاشتم تا جدا بشه

چرا اینجوری داد ؟
اگه بخوام ببینم سریال نامبر درایو دی من چنده چکار باید بکنم ؟


خواهش میکنم
مهمه
کسی نیست که مرا یاری کند ؟

quantomquery
چهارشنبه 01 دی 1389, 23:33 عصر
یعنی هیچ راهی نداره من دقیقا بدونم سریال نامبر درایو دی من چنده ؟

نبود کسی ؟