PDA

View Full Version : سوال: بدست آوردن سریال هارد و رم در سی شارپ



mahziar
جمعه 23 مرداد 1388, 20:57 عصر
با سلام خدمت دوستان عزیز , تو سی شارپ چطوری می شه سریال رم و هارد و ... رو بدست اورد . متشکر می شم اگه زود جواب بدین .

dehghanimeh
جمعه 23 مرداد 1388, 22:14 عصر
سلام
از این فایل dll استفاده کنید که شامل دوتابع



SetHardware(HDD, CPU, BIOS : Boolean)
GetMachineID


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

behzad_dr
جمعه 23 مرداد 1388, 22:31 عصر
این فایل هم کمکتون میکنه .

Amir Oveisi
شنبه 24 مرداد 1388, 01:36 صبح
میتونین از WMI هم استفاده کنید.

asd_moghadas
شنبه 24 مرداد 1388, 07:04 صبح
سلام به دوستان
لطفا راهنمایی کنید وقتی که ما سریال هارد و... گرفتیم چگونه دربرنامه به عنوان قفل استفاده کنیم .آیا منظورشما از گرفتن سریالها برای نصب برنامه برای 1بار می باشد یا که فقط برای ساخت شماره سریال فعال سازی ؟از دوستان خواهش میکنم اگه اطلاعاتی دراین زمینه دارند دریغ نکنند
ممنون

mahziar
شنبه 24 مرداد 1388, 13:10 عصر
میتونین از WMI هم استفاده کنید.
از قسمت 1001 نکته درباره سی شارپ , توابع رو برای دراوردن شماره سریالها پیدا کردم اما وقتی system.management رو using میکنم نوع داده های موجود در توابع رو بازهم نمی شناسه , چکار باید بکنم . ممنون می شم راهنمایی کنید .

vahid.bz
سه شنبه 17 شهریور 1388, 14:36 عصر
اول روی نام پروژت روی پنجره ی solution explorerراست کلیک کن و add referenceرو بزن و ازtabدات نتsystem.managmentرو انتخاب کن و okبزن حالا اگه اونو using کنی تابه ها رو میشتاسه

baradar
شنبه 18 مهر 1388, 16:58 عصر
لطفا بیشتر توضیح بدین

moferferi
شنبه 18 مهر 1388, 19:03 عصر
سلام.
یه سوال؟؟؟
من از کد زیر برای بدست اوردن شماره سریال هارد استفاده میکنم


private void GetHDDSerialNumber()
{
ManagementObjectSearcher searcher;
string query1 = "SELECT * FROM Win32_DiskDrive";
string query2 = "SELECT * FROM Win32_PhysicalMedia";
searcher = new ManagementObjectSearcher(query1);
foreach (ManagementObject wmi_HD in searcher.Get())
if (wmi_HD["Model"] != null)
MessageBox.Show(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());
}

همان طور که میدونید این کد دئتا خروجی داره که اولی مدل هارد و دومی شماره سریال هارده.
ولی مشکل اینه که سریال هارد را فقط توی بعضی سیستم ها برمیگردونه و بعضی سیستم ها یه عبارتی شبیه همون مدل هارد را میگه.
ایا امکان داره این روش با بعضی از هارد ها مشکل داشته باشه؟

system32
شنبه 18 مهر 1388, 20:34 عصر
دوست عزیز این دیگه آخرش. دانلود کن و لذت ببر.

behnamjafarzadeh
دوشنبه 11 آبان 1388, 13:17 عصر
من هم تو این زمینه مشکل جدی دارم اصلا نمی دونم این روش قابل اطمینان هست یا نه
هیچ روش دیگه ای برای قفل گذاری به ذهنتون نمی رسه که کار فروشنه نرم افزار رو هم به حداقل برسونه؟

tdkhakpur
دوشنبه 11 آبان 1388, 13:57 عصر
كلا اينگونه روشها زماني كاربرد دارد كه شما برنامه را براي مشتري نصب كنيد نه اينكه بفروشيد و ايشون هر زماني خواست نصبش كند. و اگر هم مي خواهيد اين حفاظ امنيتي را داخل ستاپ قرار بديد نرم افزار شما مشتري را راضي نخواهد كرد.

1upload
شنبه 04 دی 1389, 18:53 عصر
من همه فایل ها رو دانلود کردم ولی هیچ چیز متوجه نشدم من یه بوتون می ذارم تو سی شارپ شما کدی بنویسید که با تابع مسیج باکس شماره سریال هارد دیسک را به من نشون بده
خواهش می کنم من به این خیلی نیاز دارم

tooraj_azizi_1035
یک شنبه 05 دی 1389, 11:26 صبح
سلام به دوستان
لطفا راهنمایی کنید وقتی که ما سریال هارد و... گرفتیم چگونه دربرنامه به عنوان قفل استفاده کنیم .آیا منظورشما از گرفتن سریالها برای نصب برنامه برای 1بار می باشد یا که فقط برای ساخت شماره سریال فعال سازی ؟از دوستان خواهش میکنم اگه اطلاعاتی دراین زمینه دارند دریغ نکنند
ممنون

سلام،
وقتی که برنامه اطلاعات رو از سخت افزار کامپیوتر مشتری جمع آوری کرد این اطلاعات باید توسط کاربر به همراه یک سریال مثل 1 که فقط مختص این کپی از برنامه است (هر کپی یک سریال یکتا دارد) به سرور ارسال و سرور کد فعال سازی رو به برنامه می فرسته در صورت معتبر بودن برنامه اجرا میشه.

tooraj_azizi_1035
یک شنبه 05 دی 1389, 11:33 صبح
سلام دوستان،
طی تحقیقاتی که داشتم این اطلاعات رو بدست آوردم:

CPU Serial: در یک pdf از اینتل خواندم که این کار توسط دستور CPUID انجام می شه. اما موضوع اینجاست که سری Pentium III سریال رو می ده و بعد از ان سری ممکنه CPU این قابلیت رو ساپورت بکنه و ممکنه نه. برای اطلاعات بیشتر تو گوگل به دنبال پی دی اف CPUID Reference Intel بگردید.

MainBoard Serial: در 8 کیلو بایت آخر از یک مگابایت اول RAM قرار می گیرد اما هر کارخانه سازنده ای در یک آدرس دلخواه. اگر قرار باشد اطلاعات این محدوده را فشرده کنیم می توانیم روی آن به عنوان سریال مادربرد حساب کنیم اما اگر این بازه در طول زمان دستخوش تغییر شود چه؟ هر بار یک مقدار متفاوت.

RAM Serial: اگر کسی در این مورد اطلاعات دارد بگذارد.

HDD Serial: باید مواظب برنامه هایی که به صورت مجازی سریال را تغییر می دهند باشیم.

ضمناً سریال های جمع آوری شده باید به صورت رمز شده کنار هم قرار بگیرد تا کار Hacker ها سخت شود.

Orginal0011
یک شنبه 26 آذر 1391, 23:49 عصر
با سلام
چطوری می تونیم از این فایل dll در C# استفاده کنیم.
با تشکر

kiarash abdani
سه شنبه 28 آذر 1391, 04:19 صبح
با سلام
چطوری می تونیم از این فایل dll در C#‎‎ استفاده کنیم.
با تشکر

سلام
به این تاپیک مراجعه کنید


مبتدی: چجوری از dll های آماده استفاده کنم؟ (http://barnamenevis.org/showthread.php?367206-%DA%86%D8%AC%D9%88%D8%B1%DB%8C-%D8%A7%D8%B2-dll-%D9%87%D8%A7%DB%8C-%D8%A2%D9%85%D8%A7%D8%AF%D9%87-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%DA%A9%D9%86%D9%85%D8%9F&highlight=%D9%81%D8%A7%DB%8C%D9%84+dll+%D8%AF%D8%B 1+C%23%E2%80%8E+%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8% AF%D9%87+%DA%A9%D9%86%DB%8C%D9%85.)

alexmcse
سه شنبه 28 آذر 1391, 16:57 عصر
دو تا عکس را ببین
مشکل داشتی پیام بده


http://www.uplooder.net/img/image/362fa07afbbea28fa65e4ebba355743e/Capture6.PNG


http://www.uplooder.net/img/image/0afc3d0b23aeede3535e30cd69052ab9/Capture7.PNG