PDA

View Full Version : سوال: اجرای دستورات برنامه در زمان عدم اجرای آن



aminaltavista
دوشنبه 16 مرداد 1391, 10:19 صبح
سلام
این مقوله که باعث میشه حتی در زمانی که برنامه در حال اجرا نیست ولی دستوراتش اجرا بشه چی هست ؟ یا به عبارتی برای مثال نرم افزار های آزمایشی . چه طور زمانی که اجرا نیستند میفهمند که چه قدر از زمانی که تععین کردند گذشته است! امیدوارم منظورم رو فهمیده باشید ، نه فقط این مثال . مواردی دیگه...

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

Y_Safaiee
دوشنبه 16 مرداد 1391, 12:01 عصر
سلام دوست من

1.برای اینجور کارها معمولترن کار ساخت یه برنامه مینی کنار برنامه اصلیه که فقط سرویس میده و اینترفیس نداره,مثل Kernel32 , shell32 , Rundll و از همه قابل مشاهده تر winlogin و svchost تو ویندوز که رابط گرافیکی ندارن و برای سرویس دهی ساخته شدن و از وقتی ویندوز میاد بالا تا وقتی خاموشه داخل حافظن,شمام میتونین همینکارو با بالاآمدن ویندوز برای اجرای این برنامه مینی به کار ببرید.

هم میتونین داخل Startup بزاریدش,هم داخل Run ریجستری.یه راه دیگم ثبت سرویستون تو سرویس های ویندوزه

2.خوب با گفتن قضیه بالا میفهمیم که چطوری میشه نرم افزار رو Trial کرد,بین کاربرهای ایرانی و نرم افزارهای ایرانی که من دیدم حالت معمول ذخیره در دیتابیس,فایل های متنی,تبدیل به فرمت نامشخص,کپی چندین نمونه در تمامی درایوها و مسیرهای محرمانه برای عدم حذف یا تغییر مشخصات داخلی و برای تست هم از راههای مختلفی از جمله مقایسه counter انداخته شده,DateDiff (مقایسه تاریخ جاری سیستم با تاریخ ذخیره شده) و ... استفاده میشه.

خوب این نوع پیاده سازیم الگوریتمش سادس فقط لازمه تاریخ ها رو با هم مقایسه کنیم و اگه یه روز جلو رفته بود یه روز از حالت آموزشی کم کنه و حتی میتونین در صورت کم کردن تاریخ توسط کاربر به صورتی ک کاربر به قبل از تاریخ نصب برگردونه حتی اونو جریمم کنید.امنیت این نرم افزارها -8 هست چون کاربر هم میتونه تاریخو برگردونه و اکه داخل ریجستری هم ذخیره شه با نصب دوباره ویندوز میتونه دوباره ازش استفاده کنه.

اما روشهای صحیح چیان؟
1.استفاده از تاریخ جهانی(از طریق اینترنت)
2.استفاده از بایوس برای ذخیره سازی(مثه ویروس ها)
3.قفل کردن تاریخ و عدم تونستن در تغییر تاریخ سیستم
4.قفل یا کم کردن و محدود سازی امکانات به جای Trial کردن نرم افزار
5.کرک روزانه,یعنی کاربر هر روز یه شماره سریال از شما دریافت کنه
و ... که الان حضور ذهن ندارم.

موفق باشی
بایت بایت

aminaltavista
دوشنبه 16 مرداد 1391, 21:31 عصر
5.کرک روزانه,یعنی کاربر هر روز یه شماره سریال از شما دریافت کنه


ممنون که پاسخم رو دادید راستش قبلا که وی بی کار بودم از یه روشی مشابه 4 استفاده میکردم ، الان داخل سی شارپ زیاد به نظرم روش جالبی نمیاد و دوست دارم از روش 2 یا 5 استفاده کنم آیا شما منبعی رو در این زمینه میشناسید یا در صورت امکان مقاله ای یا اطلاعاتی در این مورد دارید ؟
باز هم ازتون ممنونم.

Y_Safaiee
دوشنبه 16 مرداد 1391, 21:53 عصر
سلام دوست من

من خودم تو اکثر برنامه هام ار این موردها استفاده میکنم هم داخل کشور هم خارج کشور برنامه هام از 5 روشی که گفتم بوده و هست,خارج چون اینترنت همیشه هست با استفاده از اینترنت بود داخل کشور بایوس و کرک روزانه.مورد 2 رو با عرض شرمندگی نمیشه بگم اما مورد 5 راحته شما برای هر روز یه شماره سریال خاص قرار میدید مسلما هر کسی نمیخواد همه فاکتوراش مال یه روز خاص باشه,مثلا میزنید 15/05/1391 شماره سریال 123 فرداش 456 پس فرداش 789 اینطوری وقتی روزهای تست تموم شه چون دیگر سریال فرداشو نداره مجبوره یا بخره یا بیخیالش شه.

مثلا من برنامم یه هفته آزمایشیه اینطوری شماره سریال میدم و از کاربر میخوام وارد سایتم شه تاریخ ثبت نرم افزارو و شماره سریال نرم افزارو بده بعد روزها رو سریال بندیش میکنم
شنبه -> 1599551
یکشنبه -> 753357
دوشنبه ->456654
سه شنبه ->852258
چهارشنبه -> 951159
پنج شنبه -> 357753
جمعه -> 258852
شنبه هم سریال میخواد و چون آزمایشیش تموم شده مجبوره یا بخره یا بیخیالش شه

به همین راحتی
موفق باشی
بایت بایت