PDA

View Full Version : سوال: استخراج سریال CPU یا MOTHERBOARD



ppp1486
دوشنبه 13 خرداد 1392, 07:08 صبح
درود بر همه دوستان خسته نباشید
چطور میشه با دستورات سی شارپ سریال CPU یا سریال MOTHERBOARD یا سریال هارد رو استخراج کرد؟؟؟

Tiam121
دوشنبه 13 خرداد 1392, 09:10 صبح
برای این موضوع اگر سرچ میکردی توی همین سایت کد های لازم بود

using system.management
سریال cpu

string LocalCPUInfo = String.Empty;
//create an instance of the Managemnet class with the
//Win32_Processor class
ManagementClass mgmt = new ManagementClass("Win32_Processor");
//create a ManagementObjectCollection to loop through
ManagementObjectCollection objCol = mgmt.GetInstances();
//start our loop for all processors found
foreach (ManagementObject obj in objCol)
{
if (LocalCPUInfo == String.Empty)
{
// only return cpuInfo from first CPU
LocalCPUInfo = obj.Properties["ProcessorId"].Value.ToString();
}
}
return LocalCPUInfo;

سریال هارد

ManagementObjectSearcher searcher;
//string query1 = "SELECT * FROM Win32_DiskDrive";
string query2 = "SELECT * FROM Win32_PhysicalMedia";
string SerialNumber = "";
/*searcher = new ManagementObjectSearcher(query1);
foreach (ManagementObject wmi_HD in searcher.Get())
if (wmi_HD["Model"] != null)
//MessageBox.Show(wmi_HD["Model"].ToString());
return wmi_HD["Model"].ToString();
*/
searcher = new ManagementObjectSearcher(query2);
foreach (ManagementObject wmi_HD in searcher.Get())
//if (wmi_HD["SerialNumber"] != null)
//MessageBox.Show(wmi_HD["SerialNumber"].ToString());
SerialNumber = wmi_HD["SerialNumber"].ToString();
return SerialNumber;

tooraj_azizi_1035
دوشنبه 13 خرداد 1392, 10:39 صبح
Intel اعلام کرده از P IIII به بعد سریال CPU به دلایل محرمانه بودن (Privacy Concerns) رو قرار نداده:http://datasheets.chipdb.org/Intel/x86/CPUID/24161821.pdf
MB:

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));
}

return mbInfo;
}

alexmcse
دوشنبه 13 خرداد 1392, 10:48 صبح
بدست آوردن مشخصات پردازنده در سی شارپ
using System;
using Microsoft.Win32;

Class Class1
{
static void Main(string[] args)
{
RegistryKey MyRegistryKey = Registry.LocalMachine;
MyRegistryKey = RegistryKey.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0");
Object cpuSpeed = RegistryKey.GetValue("~MHz");
Object cpuType = RegistryKey.GetValue("VendorIdentifier");
Console.WriteLine("You have a {0} running at {1} MHz.",cpuType,cpuSpeed);
}

ppp1486
دوشنبه 13 خرداد 1392, 10:57 صبح
ممنونم از دوستان
من سریال CPU و هارد و اینا رو برای ساخت سریال نامبر منحصر به فرد می خواستم البته اگه یه راه ساده تر دیگه ای برای ساختن سریال نامبر منحصر به فرد هست به غیر از اینا باشه خوشحال می شم راهنماییم کنید

بهروز عباسی
دوشنبه 13 خرداد 1392, 11:10 صبح
این اطلاعات رو برای قفل نرم افزاری می خوای ؟
فکر می کنید WMI راه خوبی باشه ؟

من این Dll رو با Inline Assembly توی Delphi نوشتم ID مربوط به CPU رو برمیگردونه.
یک تابع داره به اسم "GetCPUID" موقع فراخوانی نوعش رو AnsiString قرار بدید. اگه کارت رو راه انداخت بگو برای HDD هم کاری کنم :)

بهروز عباسی
دوشنبه 13 خرداد 1392, 11:13 صبح
من سریال CPU و هارد و اینا رو برای ساخت سریال نامبر منحصر به فرد می خواستم البته اگه یه راه ساده تر دیگه ای برای ساختن سریال نامبر منحصر به فرد هست به غیر از اینا باشه خوشحال می شم راهنماییم کنید
پاسخ سوال پست قبلم رو گرفتم.

برای اینکار باید از چند قطعه استفاده کنی ؛مثلا MAC Address مربود به کارت شبکه خودش Uniqueاه !
یا سریال HDD+CPU یا هر چیز دیگه رو با هم ترکیب کنی و با MDF یک Hash ازش بگیری .

ppp1486
دوشنبه 13 خرداد 1392, 11:17 صبح
ممنونم از شما حالا Mac Address رو چطور استخراج می کنن؟؟؟ یه توضیحی بدین اگه زحمتی نیست

Tiam121
دوشنبه 13 خرداد 1392, 11:35 صبح
using System.Net;
using System.Net.NetworkInformation;

NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();

string MACAddress = String.Empty;

foreach (NetworkInterface adapter in nics)
{

if (MACAddress == String.Empty)// only return MAC Address from first card
{

IPInterfaceProperties properties = adapter.GetIPProperties();

MACAddress = adapter.GetPhysicalAddress().ToString();

}

} return MACAddress;

alexmcse
دوشنبه 13 خرداد 1392, 17:42 عصر
ممنونم از دوستان
من سریال CPU و هارد و اینا رو برای ساخت سریال نامبر منحصر به فرد می خواستم البته اگه یه راه ساده تر دیگه ای برای ساختن سریال نامبر منحصر به فرد هست به غیر از اینا باشه خوشحال می شم راهنماییم کنید


سلام
بدست آوردن شماره سی پی یو یا مادر بورد یا کارت شبکه کافیست
به نظر من از دوتا (مثلا مادر برد و کارت شبکه) با هم استفاده کن

fool66
دوشنبه 13 خرداد 1392, 17:52 عصر
فکر کنم CPU و هارد کفایت کنه

بهروز عباسی
دوشنبه 13 خرداد 1392, 18:06 عصر
بدست آوردن شماره سی پی یو یا مادر بورد یا کارت شبکه کافیست

متاسفانه ،ظاهراً اینا رو میشه دور زد یا اصلاً دور زده شده هستن:لبخند:
مثلا CPU یه سری میزنن و شبیه هم هستن،MainBoard کار نکردم ولی شنیدم تکراری داره میمونه هارد و کارت شبکه که اینا هم اعتباری ندارن مک رو که میشه جعل کرد فقط هارد موند اونم اگه نسوزه که کاربر بخواد عوضش کنه :) اگه برنامت مهمه از قفل سخت افزاری استفاده کن .
من این مطالب رو در پست قبلی نگفتم چون یادم نبود.

به نظر من از دوتا (مثلا مادر برد و کارت شبکه) با هم استفاده کن منم که همینو گفتم برادر.

موفق باشید.

ppp1486
دوشنبه 13 خرداد 1392, 18:17 عصر
یعنی کلا هیچ راهی وجود نداره که با برنامه نویسی سریال نامبر ساخت؟؟؟ من از برنامه نوشتن لذت می برم حدالامکان دوس دارم برنامه نویسی کنم ولی از گفته های دوستان این جوری برداشت کردم که ممکنه سریال های هارد و ... تکراری از آب در بیاد؟؟
اگه امکانش هست در مورد قفل سخت افزاری یه توضیحی بدید ممنون می شم ، نرم افزاره؟؟؟

بهروز عباسی
دوشنبه 13 خرداد 1392, 18:27 عصر
یعنی کلا هیچ راهی وجود نداره که با برنامه نویسی سریال نامبر ساخت؟؟؟ من از برنامه نوشتن لذت می برم حدالامکان دوس دارم برنامه نویسی کنم ولی از گفته های دوستان این جوری برداشت کردم که ممکنه سریال های هارد و ... تکراری از آب در بیاد؟؟
اگه امکانش هست در مورد قفل سخت افزاری یه توضیحی بدید ممنون می شم ، نرم افزاره؟؟؟
چرا میشه ولی 100 درصد تضمینی نیست ، البته اگه توی این زمینه (کرک و مهندسی نرم افزار و روشهای اون )کار کرده باشی میتونی با همینا هم کار خوبی تحویل بدی ولی سخت افزاری بهتره.

توی مدل سخت افزاری شما واقعاً از دیوایس سخت افزاری که معمولا با USB به سیستم متصل میشه و نقش کلید رو برای اون برنامه ایفامیکنه استفاده میکنی
این روش به شرط پیاده سازی صحیح بخش نرم افزاری خیلی عالیه
لطفاً برای کسب اطلاعات بیشتر به بخش امنیت نرم افزار سایت مراجعه کن و کمی هم جستجو کن

خلاصه کلام آگه میتونی این کارو انجام بدی که چه بهتر
ولی اگه برنامت مهمه به ریسکش نمی ارزه از قفل های آماده استفاده کن

روز خوش.

nilu0111
چهارشنبه 22 خرداد 1392, 09:52 صبح
سلام
کسی میتونه تو زمینه کرک نرم افزار بهم کمک کنه
خیلی هم مهمه
جبرانم میکنم
:بوس: