PDA

View Full Version : مبتدی: افزایش مقدار Setting



cmsdqq2
پنج شنبه 03 دی 1394, 20:52 عصر
بنده در Setting برنامه یک متغییری گذاشتم به نام روز باقیمانده، به صورت پیش فرض 3 هست، طبق کدی که نوشتم بعد از 3 روز تریال برنامه تموم میشه و اگر کاربر بعد از 3 روز برنامه باز کنه باید کد فعالسازی رو وارد کنه. حال من میخوام بعد از اتمام مهلت تریال، کاربر وقتی مثلا کد 12345 رو وارد فرم فعالسازی کرد، مهلت تریال زیاد بشه. مثلا بشه 90 روز و برنامه دوباره تا 90 روز منتظر بمونه تا تموم بشه

ghasem110deh
پنج شنبه 03 دی 1394, 21:26 عصر
سلام :)
با این کد میشه مقدار پیش فرضی که به متغرتوی ستینگ داده تغییر و ذخیره کنید :

Settings.Default.Used_No = 90;
Settings.Default.Save();

و واسه شمارش تعداد روزهای سپری شده پس از نصب که با تاریخ فعالسازی یا محاسبه هر 24 ساعت و هر الگوریتمی که مد نظرتون هست ، میشه چک کرد که تعداد به 90 رسیده یا نه

cmsdqq2
پنج شنبه 03 دی 1394, 22:21 عصر
ممنون بابت پاسختون. بنده با این مورد مشکلی ندارم، میخوام متغیر رو افزایش بدم.

esafb52
پنج شنبه 03 دی 1394, 22:25 عصر
با سلام
شما اول مقدار اون متغییر رو از ستینگ بخون بعدا بهش اضافه کنین شما مگه نوع متغییر تون چیه؟

cmsdqq2
پنج شنبه 03 دی 1394, 22:36 عصر
این کار رو انجام دادم.

مقدار رو تنظیم کردم، ذخیره کردم، درست هم کار میکنه و مدت زمان هم کم میشه. حالا میخوام وقتی مدت زمان تموم شد، فرم کد فعالسازی بیاد (این کار رو هم انجام دادم)، دقیقا اینجا رو میخوام که وقتی کد وارد شد، مقدار تریال دوباره افزایش پیدا کنه

cmsdqq2
پنج شنبه 03 دی 1394, 22:40 عصر
کل ماجرا این هست.

شما بفرماید برای این موضوع چه باید کرد؟

Mahmoud.Afrad
جمعه 04 دی 1394, 07:58 صبح
فایل محتوی Setting قابل حذف و یا تغییر هست و برای این کار (نسخه trial) مناسب نیست.

cmsdqq2
جمعه 04 دی 1394, 11:36 صبح
پس شما جز راه رجیستری، فایل Setting و محدود کردن برنامه، چه راهی رو پیشنهاد میدید؟ - قفل نرم افزاری مورد نظر بنده هست - (بخش های مختلفی از همین سایت در مورد این مبحث بحث کردند که اکثراً به نتیجه خوبی نرسیدند و یا گفتند که قفل سخت افزاری بهترین هست.)

abdullah20
جمعه 04 دی 1394, 11:47 صبح
نرم افزار شما دارای دیتابیس است؟

cmsdqq2
جمعه 04 دی 1394, 12:37 عصر
بله دیتابیس داره اما نمیخوام موارد در دیتابیس ذخیره بشه

چون دیتابیس اکسس هست و اینکه مشتری باید به دیتابیس به صورت مستقیم و هم از طریق برنامه دسترسی داشته باشه

cmsdqq2
شنبه 05 دی 1394, 20:08 عصر
دوستان پیشنهادی ندارین؟

cmsdqq2
یک شنبه 06 دی 1394, 13:42 عصر
اگر از ++d.remainderDays استفاده بشه، باز هم نتیجه نمیده...

cmsdqq2
دوشنبه 07 دی 1394, 22:42 عصر
هیچ فردی نظری نداره؟

محمد رضا فاتحی
دوشنبه 07 دی 1394, 23:29 عصر
سلام...جهت نگهداری روزهای باقیمانده نسخه آزمایشی به هیچ وجه از setting استفاده نکنید... چون براحتی فایل قابل پیدا شدن و دستکاریه
بهترین راه حل استفاده از هاست جهت چک کردن سریال و ذخیره سازی روزهای باقیمانده بصورت کد شده داخل یکی از شاخه های تو در توی ریجستری!

cmsdqq2
سه شنبه 08 دی 1394, 10:28 صبح
سپاس از شما

zayens
چهارشنبه 09 دی 1394, 13:03 عصر
عدد مورد نظر را کنار برنامه توی فایل تکست بصورت dll ذخیره کن و اسمشو بزار مثلا system.reg.dll یا حتی توی دیتابیس ذخیره کن هیچ مشکلی نداره!
جای ذخیره مهم نیست حتی اگه توی اکسس باشه و قابل خوندن باشه!
فقط مهم اینه که باید اینکریپتش کنی
موقع خوندن هم دیکریپتش کن
به همین سادگی

zayens
چهارشنبه 09 دی 1394, 13:15 عصر
سلام...جهت نگهداری روزهای باقیمانده نسخه آزمایشی به هیچ وجه از setting استفاده نکنید... چون براحتی فایل قابل پیدا شدن و دستکاریه
بهترین راه حل استفاده از هاست جهت چک کردن سریال و ذخیره سازی روزهای باقیمانده بصورت کد شده داخل یکی از شاخه های تو در توی ریجستری!
با برنامه های فریز کردن رجیستری این روش fail میشه
اگه برنامه آنلاین باشه نیاز به ذخیره کردن روز باقیمونده اونم توی شاخه های تو در توی رجیستری نیست!
اگه قراره آنلاین باشه فقط سریال برنامه کافیه و حتی نیاز به کد کردن هم نداره
چون امکان شانسی وارد کردن سریال نیست. و اگر یونیکد پی سی هم همراه سریال از طریق وب چک بشه اینجوری دیگه امکان نصب روی بیش از یک سیستم هم از بین میره
بعد از ارسال اطلاعات از طریق مثلا وب سرویس تعداد روزهای باقیمونده برای اون نرم افزار و روی اون پی سی داده میشه.
دیدم که میگما!
.
.
.
این روشها تا حدی جلوی کرک و هک کردن برنامه را حتی برای برنامه نویس های مجرب میگیره اما
تا حدی
ولی بهتراز هیچیه

abdullah20
چهارشنبه 09 دی 1394, 14:02 عصر
دوست عزیز این بحث ها داخل این سایت خیلی شده اند برید سرچ کنید
نرم افزار شما دیتابیس داره بهترین جای ذخیره سازی همون دیتابیسه اینا مطمئن باشید
برای چک کردن از طریق اینترنت هم اومدیم کاربر اینترنت نداشت؟اون وقت چی؟

اصلا بحث دادن یا ندادن نسخه تریال خودش مفصله یعنی هر نرم افزاری را نمیشه نسخه تریال داد بیرون و باید از همون اول خریداری بشه
تاپیک زیر را هم ببینید:
http://barnamenevis.org/showthread.php?508039-%D8%AF%D8%B1-%D8%A7%D8%AE%D8%AA%DB%8C%D8%A7%D8%B1-%DA%AF%D8%B0%D8%A7%D8%B4%D8%AA%D9%86-%D9%86%D8%B3%D8%AE%D9%87-%D8%A2%D8%B2%D9%85%D8%A7%DB%8C%D8%B4%DB%8C-%D8%A8%D9%87%D8%AA%D8%B1-%D8%A7%D8%B3%D8%AA-%D9%88-%DB%8C%D8%A7-%D8%A7%D8%B1%D8%A7%D8%A6%D9%87-%DA%A9%D8%A7%D8%AA%D8%A7%D9%84%D9%88%DA%AF&highlight=%D8%B4%DA%A9

cmsdqq2
چهارشنبه 09 دی 1394, 15:46 عصر
بنده نرم افزار چندان مهمی ندارم و بازار کاری که میخوان از این نرم افزار استفاده کنند، تقریباً هیچ علمی به رایانه و ... ندارند.

ممنون از شما به دلیل اینکه وقت گذاشتین و جواب دادین.

بنده الان روش رجیستری رو انتخاب کردم.

من میخوام اعمال تابعی که فرستادم (تابع بالا) با رجیستری انجام بشه.


درج کردن کد در رجیستری که مشکلی نیست، خواندنش هم موردی نیست فقط میشه بگین برای open,First و remainder day باید چکار کنم؟

cmsdqq2
چهارشنبه 09 دی 1394, 16:03 عصر
به نظر شما از روش تایمر و فایل با رمزنگاری AES استفاده بشه خوبه؟

cmsdqq2
چهارشنبه 09 دی 1394, 16:29 عصر
دوستان کسی کلاس AES رو نداره؟

میخوام برای AES.Decrypt و Encrypt استفاده کنم

abdullah20
چهارشنبه 09 دی 1394, 17:28 عصر
سورس و کلاس AES داخل سایت است سرچ کنید

cmsdqq2
چهارشنبه 09 دی 1394, 19:25 عصر
ممنون پیدا کردم فقط یک نکته بنده با این خطا روبرو میشم:

padding-is-invalid-and-cannot-be-removed

cmsdqq2
چهارشنبه 09 دی 1394, 22:58 عصر
دوستان تغییر دادن فایل setting و دستکاری در اون با توجه به تابع بالا، راحت تر هست یا تغییر در رجیستری؟

و اینکه اگر ویندوز عوض بشه، چه اتفاقی رخ میده؟