PDA

View Full Version : Serial



morika
یک شنبه 15 شهریور 1388, 16:01 عصر
سلام

من برای قفل برنامم احتیاج داشتم که شماره سریال مادربرد رو بگیرم. ولی تازه متوجه شدم که تمام مادربردها شماره سریال نمی دن. یکیش مادربرد خودم. حالا از چه شماره سریالی استفاده کنم که تمام کامپیوترها اونو بدن؟

ممنون

saadi2
یک شنبه 15 شهریور 1388, 16:27 عصر
از سریال هارد دیسک استفاده کن

morika
یک شنبه 15 شهریور 1388, 18:48 عصر
البته اگه جواب ها کامل باشه همیشه بهتره. خوب اگه من می تونستم این کارو بکنم که دیگه سوال نمی نوشتم. شما هم به خودت دیگه زحمت نمی دادی 4تا کلمه تو جواب بنویسی. ها؟

mlf_mlv
یک شنبه 15 شهریور 1388, 19:03 عصر
من تو این زمینه کلا شوتم:قهقهه: می شه بگی مال مادربرد رو چطوری ور می داری؟

ACorvinus
یک شنبه 15 شهریور 1388, 19:20 عصر
موفق باشی .

36491

ALI TT
یک شنبه 15 شهریور 1388, 20:39 عصر
موفق باشی .

36491

خروجی برنامه شما این بود :

Processor ID: BFEBFBFF00000F34
MAC Address: 005345000000
Volume Serial: E8652656
Motherboard ID: قسمتی که بزرگ کردن سریال هارد نیست !!!
این سریال مربوط به درایوهای سیستم (معمولا C) میباشد و با فرمت کردن درایو ها تغییر می کنه .
با این کد میتونید سریال هار رو بدست بیارید . من خودم توی 5 نرم افزارم گذاشتم ، و جواب داده (بد جور)

Imports System.Management
________________________________________________
Dim out As String = ""
Dim searcher As New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_DiskDrive")
For Each queryObj As ManagementObject In searcher.Get()
Dim a As String = (queryObj("PNPDeviceID"))
If a.Substring(0, 3) <> "USB" Then out = (queryObj("PNPDeviceID")).ToString.ToLower
Next

MsgBox(out)اون دستور IF برای نادیده گرفتم درایوهای USB هستش

morika
دوشنبه 16 شهریور 1388, 00:06 صبح
این کد تو قسمت های قرمز error میده: چرا؟


Imports System.Management
________________________________________________
Dim out As String = ""
Dim searcher As New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_DiskDrive")
For Each queryObj As ManagementObject In searcher.Get()
Dim a As String = (queryObj("PNPDeviceID"))
If a.Substring(0, 3) <> "USB" Then out = (queryObj("PNPDeviceID")).ToString.ToLower
Next

MsgBox(out)

Navid Asadi
دوشنبه 16 شهریور 1388, 00:26 صبح
ALI TT (http://barnamenevis.org/forum/member.php?u=63303)
دوست عزیز کد زیر خروجی کد تو هستش:
ide\diskmaxtor_stm3320820as_____________________3. aae___\5&3b649423&0&0.0.0

آیا
5&ا3b649423&0&0.0.0
سریال هارد منه؟


این کد تو قسمت های قرمز error میده: چرا؟

برنامه ای که ضمیمه کردم دیگه این مشکل رو نداره...
دلیل مشکل هم اینه که شما باید یک چیز رو به ریفرنس فرمتون اضافه کنید

ALI TT
دوشنبه 16 شهریور 1388, 00:46 صبح
این کد تو قسمت های قرمز error میده: چرا؟


Imports System.Management
________________________________________________
Dim out As String = ""
Dim searcher As New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM Win32_DiskDrive")
For Each queryObj As ManagementObject In searcher.Get()
Dim a As String = (queryObj("PNPDeviceID"))
If a.Substring(0, 3) <> "USB" Then out = (queryObj("PNPDeviceID")).ToString.ToLower
Next

MsgBox(out)

همون طور که دوست عزیزمو Navid Asadi (http://www.barnamenevis.org/forum/member.php?u=98438) گفتن شما باید یک آیتم رو به رفرنس اضافه کنین . بداین شکل :
از منوی Project گزینه Add Reference سپس از برگه .NET بر روی گزینه ی :
System.Management
کلیک و OK رو بزنید

ALI TT
دوشنبه 16 شهریور 1388, 00:49 صبح
ALI TT (http://barnamenevis.org/forum/member.php?u=63303)
دوست عزیز کد زیر خروجی کد تو هستش:
ide\diskmaxtor_stm3320820as_____________________3. aae___\5&3b649423&0&0.0.0

آیا
5&ا3b649423&0&0.0.0
سریال هارد منه؟



برنامه ای که ضمیمه کردم دیگه این مشکل رو نداره...
دلیل مشکل هم اینه که شما باید یک چیز رو به ریفرنس فرمتون اضافه کنید

بطور مشخص نه . ولی شما می تونید با روش رمز نگاری و از این قبیل ، یک کد مثلا 10 رقمی به خروجی بفرستید .
مثلا با حذف آندرلاینها و & و کلماتی مانند Maxtot و IDE و / و \ و . و .... یا مثلا جمع تمام اعداد با هم و ......

ALI TT
دوشنبه 16 شهریور 1388, 00:54 صبح
این هم تمام توابع System.Management ... که با اونها می تونید از سریال هارد گرفته تا باطری مادربرد رو دربیارید !!!
همینطور مشخصات اونا


دوستان تشکر فراموش نشه (با عرض شرمندگی):قلب::قلب:

hojjatshariffam
چهارشنبه 29 مهر 1388, 18:15 عصر
اینم کد در آوردن سریال هارد به سی شارپ
البته خیلی ساده و سریع نوشتم . امیدوارم که به درد دوستان بخوره

ضمنا باید تو پروژتون حوزه نام System.Managment رو ادد کنید و سپس ابتدای کدتون Using کندیدش


using System.Management;


بعد در قسمت متدی که لازم دارد سریال اونجا بدست بیاد کد زیر رو بنویسید



ManagementObjectSearcher OBJS = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");
foreach (ManagementObject OBJ in OBJS .Get())
{
foreach (PropertyData OBJProperty in OBJ.Properties)
if (OBJProperty.Name == "PNPDeviceID")
MessageBox.Show(OBJProperty.Name + " is :" + OBJProperty.Value);

}
توجه کنید که ممکن است تو کامپیوترتون چند تا وسیله IDE یا SATA یا USB مانند هارد و یا USB Flash Disk یا ... داشته باشید که به عنوان DisckDrive شناسائی شوند که در اینصورت سریال همه اونارو براتون تک تک میاره ، میتونید با یه چک کردن ساده و دیدن تفاوت سریال اونها سریال مورد نظرتونو بدست بیارید

توجه :
1- خودتون باید خلاقیت به خرج بدین
2- بعد از بدست اوردن سریال حتما اونو به طرق مختلف رمز یا هش کنید
3- کد های بالا یک الگو برای توسعه می باشد و ممکن است با کاربرد شما همسان نباشد
4- میتونید برای تست ، اگه با MessageBox مشکل داشتید سریال رو تو یه TextBox یا ListBox درج کنید(دیگه خیلی باید مبتدی باشی اگه که این بندو لازم داشته باشی : شوخی)

saeid69
شنبه 08 اسفند 1388, 12:55 عصر
با سلام و تشکر از hojjatshariffam (http://barnamenevis.org/forum/member.php?u=64191)
حالا اگه خواستیم که فقط سریال هارد رو در بیاره باید چه کار کنیم