المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : اريد عمل تايمر بعدد الايام المتبقية حتي تتوقف الاسطوانة وتطلب ر‏قم التسجيل


محمد فرحات
04-03-2014, 11:01 AM
السلام عليكم ورحمة الله وبركاته
بسم الله الرحمن الرحيم
الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين

خطر ببالي فكرة اني اعمل تايمر لاسطوانة معينة اريد الاكواد اللازمة لعمل ذلك مع العلم ان هذا التايمر يظهر عدد الايام المتبقية من تشغيل الاسطوانة حتي يتم تسجيلها وبعدما يتم تسجيلها يختفي هذا التايمر
http://im55.gulfup.com/Zrtga.png
وقد ارفقت لكم مثال لتوضيح الفكرة اكثر

http://www.gulfup.com/?SxhFfM

وجاري التفكير لعل وعسي تأتي فكرة عابرة تحل المسألة:abc_005:
منتظر ردودكم

والسلام عليكم ورحمة الله وبركاته

فرح صالحي
04-03-2014, 12:00 PM
السلام عليكم ورحمة الله وبركاته
إختر On startup وقم بنسخ هذا الكود

[CODE][days_left = 30;

date_installed = Application.LoadValue("My Application", "Date Installed");

date_installed = String.ToNumber(date_installed);

times_limit = 30;

if date_installed == 0 then

Application.SaveValue("My Application", "Date Installed", System.GetDate(DATE_FMT_JULIAN));

else

day_left = (date_installed + times_limit) - System.GetDate(DATE_FMT_JULIAN);

end

if day_left < 1 then

Dialog.Message("trial period over", "This software has expered");

Application.Exit();

else

Dialog.Message("Trial Period", "You have "..days_left.." days in your trial period");

end

/CODE]
الاسطوانة ستشتغل لمدة 30 يوما تستطيع تغيرها حسب رغبتك بالدخول الى الكود
مجرد ناقل ولست خبير
موفق بإذن الله ... لك مني أجمل تحية .

:abc_152:

فرح صالحي
04-03-2014, 04:47 PM
السلام عليكم ورحمة الله وبركاته
من Project اذهب الى الامر Actions ثم On startup الصق الكود التالي :

days_left = 30;

date_installed = Application.LoadValue("My Application", "Date Installed");

date_installed = String.ToNumber(date_installed);

times_limit = 30;

if date_installed == 0 then

Application.SaveValue("My Application", "Date Installed", System.GetDate(DATE_FMT_JULIAN));

else

day_left = (date_installed + times_limit) - System.GetDate(DATE_FMT_JULIAN);

end

if day_left < 1 then

Dialog.Message("trial period over", "This software has expered");

Application.Exit();

else

Dialog.Message("Trial Period", "You have "..days_left.." days in your trial period");

end

محمد فرحات
07-03-2014, 08:24 PM
السلام عليكم ورحمة الله وبركاته
من project اذهب الى الامر actions ثم on startup الصق الكود التالي :

days_left = 30;

date_installed = application.loadvalue("my application", "date installed");

date_installed = string.tonumber(date_installed);

times_limit = 30;

if date_installed == 0 then

application.savevalue("my application", "date installed", system.getdate(date_fmt_julian));

else

day_left = (date_installed + times_limit) - system.getdate(date_fmt_julian);

end

if day_left < 1 then

dialog.message("trial period over", "this software has expered");

application.exit();

else

dialog.message("trial period", "you have "..days_left.." days in your trial period");

end



متشكر لرد حضرتك بس دا مش المطلوب

انا قصدي علي مثلا

عندي اسطوانة برامج عاوز اخليها تجريبية هنعمل كدا بالكود اللي حضرتك وضعته هنا
انا عملتها تجريبيه تمام
عاوز طول الفتره التجريبية يظهرلي مؤقت يعد الايام تنازلي بعدد أيام الفتره التجريبية

فرح صالحي
07-03-2014, 10:29 PM
السلام عليكم ورحمة الله وبركاته
يجود علينا الخيرون بمالهم ****** ونحن بمال الخيرين نجود
ما أعرفه قدمته لك ... عليك بأصحاب الخبرة والمعرفة
متابع معك للاستفادة .
موفق بإذن الله ... لك مني أجمل تحية .
:abc_023:

محمد فرحات
08-03-2014, 07:25 AM
السلام عليكم ورحمة الله وبركاته
يجود علينا الخيرون بمالهم ****** ونحن بمال الخيرين نجود
ما أعرفه قدمته لك ... عليك بأصحاب الخبرة والمعرفة
متابع معك للاستفادة .
موفق بإذن الله ... لك مني أجمل تحية .
:abc_023:
جزاك الله خيرا

منتظر معك باقي الاخوه الكرام
شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .

خادم المسلمين
08-03-2014, 02:49 PM
http://www.abc4web.net/vb/images/misc/subscribed.gif محاولة لجعل التجميعة لا تعمل الا على جهاز المشترى (http://www.abc4web.net/vb/showthread.php?t=28407)

فرح صالحي
09-03-2014, 11:33 PM
السلام عليكم ورحمة الله وبركاته
اخي هذا ملف للاخ هيثم ادخلت عليه تحويرات طفيفة ليتماشى مع حاجتك
http://www.gulfup.com/?LFONWh
هذا جهد الهاوي ...
موفق بإذن الله ... لك مني أجمل تحية .
:abc_113:

الجارف
09-03-2014, 11:52 PM
السلام عليكم ورحمة الله وبركاته
اخي هذا ملف للاخ هيثم ادخلت عليه تحويرات طفيفة ليتماشى مع حاجتك
http://www.gulfup.com/?lfonwh
هذا جهد الهاوي ...
موفق بإذن الله ... لك مني أجمل تحية .
:abc_113:

يعجبني فيك المحاولات الجادة .. لفهم البرمجة ومساعدة الآخرين

أحييييييييييييييييييييييك أخي على ذلك ..

أحب أن أوضح لك شيئًا :

الملف الذي أرفقته لا يتماشى مع طلب السائل

لأنك اعتتمدت على تاريخ محدد تنتهي فيه الصلاحية وهو :

( 2014 03 20 12:00:00 am )

في حين لو اني استخدمت الاسطوانة بعد هذا التاريخ فلن تعمل

هل أدركت الخطأ الذي وقعت فيه ؟؟؟

ثامر أبو بلقيس
10-03-2014, 01:41 AM
إخواني تقبلوا هذا المرور كل الحمايات المتعلقة بالتاريخ
بها فجوة و هي التلاعب بتاريخ الجهاز فحتى لو تم مثلا أخذ ما فكر
فيه الأخ صالحي كمثال و تم تعديله من طرف أخي الجارف سأتلاعب بتاريخ الجهاز
و أعيده لمراحل سابقة لتعمل الاسطوانة مثل ما أريد ويبدأ العد التنازلي باختياري
الفكرة في مثل هاته الحالات هي اول ما تدخل الاسطوانة تسجل تاريخ اليوم حسب جهاز المستخدم مهما كان
هذا التاريخ
ويتم تخزينه بعيدا عن انظار المستخدم و تتم مقارنة الايام الباقية مع ما خزن
حتى لو قام المستخدم بتغيير التاريخ فالمقارنة لا تتم من تاريخ الجهاز
بل ما خزن لأول مرة
مجرد مرور قد يحمل فكرة ما :abc_138:

فرح صالحي
10-03-2014, 01:49 PM
يعجبني فيك المحاولات الجادة .. لفهم البرمجة ومساعدة الآخرين

أحييييييييييييييييييييييك أخي على ذلك ..

أحب أن أوضح لك شيئًا :

الملف الذي أرفقته لا يتماشى مع طلب السائل

لأنك اعتتمدت على تاريخ محدد تنتهي فيه الصلاحية وهو :

( 2014 03 20 12:00:00 am )

في حين لو اني استخدمت الاسطوانة بعد هذا التاريخ فلن تعمل

هل أدركت الخطأ الذي وقعت فيه ؟؟؟
=======================================
السلام عليكم ورحمة الله وبركاته
شكرا على الملاحظات اخي وشكرا على الكلمات المشجعة
كما قلت للاخ جهد الهاوي ....
موفق بإذن الله ... لك مني أجمل تحية .
:abc_138:

محمد فرحات
11-03-2014, 06:20 PM
السلام عليكم ورحمة الله وبركاته
اخي هذا ملف للاخ هيثم ادخلت عليه تحويرات طفيفة ليتماشى مع حاجتك
http://www.gulfup.com/?lfonwh
هذا جهد الهاوي ...
موفق بإذن الله ... لك مني أجمل تحية .
:abc_113:
جزاك الله خيراً




إخواني تقبلوا هذا المرور كل الحمايات المتعلقة بالتاريخ
بها فجوة و هي التلاعب بتاريخ الجهاز فحتى لو تم مثلا أخذ ما فكر
فيه الأخ صالحي كمثال و تم تعديله من طرف أخي الجارف سأتلاعب بتاريخ الجهاز
و أعيده لمراحل سابقة لتعمل الاسطوانة مثل ما أريد ويبدأ العد التنازلي باختياري
الفكرة في مثل هاته الحالات هي اول ما تدخل الاسطوانة تسجل تاريخ اليوم حسب جهاز المستخدم مهما كان
هذا التاريخ
ويتم تخزينه بعيدا عن انظار المستخدم و تتم مقارنة الايام الباقية مع ما خزن
حتى لو قام المستخدم بتغيير التاريخ فالمقارنة لا تتم من تاريخ الجهاز
بل ما خزن لأول مرة
مجرد مرور قد يحمل فكرة ما :abc_138:

هذا هو
لقد فهمت طلبي الان اخي ثامر
ياحبذا لو تنفذ الفكرة
هي سهله بس مش راضيه تيجي معايا

حاولت كذا مره بس كل مره بيبقي فيه حاجه ناقصة

منتظر المشروع المفتوح أو الكود اخي ثامر

جزاك الله خيراًلما تقدمه لنا

=======================================
السلام عليكم ورحمة الله وبركاته
شكرا على الملاحظات اخي وشكرا على الكلمات المشجعة
كما قلت للاخ جهد الهاوي ....
موفق بإذن الله ... لك مني أجمل تحية .
:abc_138:
وعليكم السلام ورحمة الله وبركاته
بارك الله فيك فهذا جهد كبير من حضرتك (بالمصري) (هوا دا العشم برده ) هههههههههههههه

ثامر أبو بلقيس
12-03-2014, 12:14 AM
أخي تستطيع تخزين التاريخ الأول الذي استعملت
فيه الاسطوانة يمكن أن تشفر أو تطور هذا التخزين
هذا مجرد اقتراح تقبله مني ريثما يتدخل الزملاء

في on show ازرع الكود التالي سيمكنك من حفظ أول تاريخ
استعملت فيه الاسطوانة و تخزينه في ملف نصي وهذا هو الملف الذي ستتعامل معه
في تناقص الأيام
بعيدا عن تاريخ الجهاز
فعند دخول التجميعية ستتفقد هذا الملف إن كان موجود أعطيته اجراء وهمي
abou_belkiss=abou_belkiss

إن كان غير موجود يخزن أول استعمال
result = File.Find(_ProgramFilesFolder, "\\10.txt", true, false, nil);
if result then
abou_belkiss=abou_belkiss
else
d = System.GetDate(DATE_FMT_DAY);
m = System.GetDate(DATE_FMT_MONTH);
y = System.GetDate(DATE_FMT_YEAR);
TextFile.WriteFromString(_ProgramFilesFolder.."\\10.txt", d.."\r\n"..m.."\r\n"..y, false);
end

بعد تشغيل لأول مرة مهما غيرت تاريخ الجهاز سيبقى محافظ على ما كتب
لأول مرة

قد ينتقد هذا الاقتراح لكن هذا ما عرفنا لمساعدة الزملاء في ظل افتقارنا
للمعلومة
والسلام عليكم

النصل القاطع
12-03-2014, 12:44 AM
فعند دخول التجميعية ستتفقد هذا الملف إن كان موجود أعطيته اجراء وهمي
abou_belkiss=abou_belkiss

إن كان غير موجود يخزن أول استعمال
result = File.Find(_ProgramFilesFolder, "\\10.txt", true, false, nil);
if result then
abou_belkiss=abou_belkiss
else
d = System.GetDate(DATE_FMT_DAY);
m = System.GetDate(DATE_FMT_MONTH);
y = System.GetDate(DATE_FMT_YEAR);
TextFile.WriteFromString(_ProgramFilesFolder.."\\10.txt", d.."\r\n"..m.."\r\n"..y, false);
end



ليس هناك حاجة لإجراء وهمى

فقط قم بإدارة الشرط if بطريقة أفضل
هنا ما يهمك هو حالة عدم إنطباق الشرط

و أنت بدأت بحالة إنطباق الشرط
مما دعاك لإستدعاء إجراء وهمى

إبدأ بالبحث عن عدم إنطباق الشرط مباشرة
هكذا
result = File.Find(_ProgramFilesFolder, "\\10.txt", true, false, nil);
if not result then
d = System.GetDate(DATE_FMT_DAY);
m = System.GetDate(DATE_FMT_MONTH);
y = System.GetDate(DATE_FMT_YEAR);
TextFile.WriteFromString(_ProgramFilesFolder.."\\10.txt", d.."\r\n"..m.."\r\n"..y, false);
end

لن تحتاج هنا لاجراء وهمى

ثامر أبو بلقيس
12-03-2014, 01:01 AM
بارك الله فيك
أفدتني شكرا جزيلا :abc_152:

محمد فرحات
12-03-2014, 09:47 PM
أخي تستطيع تخزين التاريخ الأول الذي استعملت
فيه الاسطوانة يمكن أن تشفر أو تطور هذا التخزين
هذا مجرد اقتراح تقبله مني ريثما يتدخل الزملاء

في on show ازرع الكود التالي سيمكنك من حفظ أول تاريخ
استعملت فيه الاسطوانة و تخزينه في ملف نصي وهذا هو الملف الذي ستتعامل معه
في تناقص الأيام
بعيدا عن تاريخ الجهاز
فعند دخول التجميعية ستتفقد هذا الملف إن كان موجود أعطيته اجراء وهمي
abou_belkiss=abou_belkiss

إن كان غير موجود يخزن أول استعمال
result = file.find(_programfilesfolder, "\\10.txt", true, false, nil);
if result then
abou_belkiss=abou_belkiss
else
d = system.getdate(date_fmt_day);
m = system.getdate(date_fmt_month);
y = system.getdate(date_fmt_year);
textfile.writefromstring(_programfilesfolder.."\\10.txt", d.."\r\n"..m.."\r\n"..y, false);
end

بعد تشغيل لأول مرة مهما غيرت تاريخ الجهاز سيبقى محافظ على ما كتب
لأول مرة

قد ينتقد هذا الاقتراح لكن هذا ما عرفنا لمساعدة الزملاء في ظل افتقارنا
للمعلومة
والسلام عليكم
جزاك الله خيراً علي الاهتمام والرد


ليس هناك حاجة لإجراء وهمى

فقط قم بإدارة الشرط if بطريقة أفضل
هنا ما يهمك هو حالة عدم إنطباق الشرط

و أنت بدأت بحالة إنطباق الشرط
مما دعاك لإستدعاء إجراء وهمى

إبدأ بالبحث عن عدم إنطباق الشرط مباشرة
هكذا
result = file.find(_programfilesfolder, "\\10.txt", true, false, nil);
if not result then
d = system.getdate(date_fmt_day);
m = system.getdate(date_fmt_month);
y = system.getdate(date_fmt_year);
textfile.writefromstring(_programfilesfolder.."\\10.txt", d.."\r\n"..m.."\r\n"..y, false);
end

لن تحتاج هنا لاجراء وهمى

منكم نستفيد

جاري التطبيق والرد باذن الله

اعتذر عن الرد متأخر بسبب سوء الانترنت

متشكر جداً لكل الاخوة اللي بيساعدوني

والسلام عليكم ورحمة الله وبركاته

خادم المسلمين
23-07-2014, 01:29 PM
ربما هذا الشرح للاستاذ كريم هيفيدك


كيفية وضع رقم تسجيل للإسطوانة
أولا قم بتحميل الشرح من هذا الرابط

http://www.4shared.com/file/13400587...720/trial.html
او
http://www.gulfup.com/?QmwvQb
او
http://exoshare.com/download.php?uid=1BDJKBOV
بعد التحميل ستجد درسين


الدرس الأول هو كيفية وضع رقم التسجيل


و
هو شرح بالصوت والصورة ولمدة 11 دقيقة حيث قمت بالتركيز على كيفية أو المبدأ المتبع في الحصول على الكود


اما الدرس الثاني: فهو عبارة عن ملاحظة تتعلق بالدرس السابق


ألا وهي كيفية التحكم في عنوان الأسطوانة في شريط العنوان
أي في الفترة التي تكون فيه الأسطوانة تجريبية رايحة تظهر في إسم وعنوان الأسطوانة كلمة trial version وطبعا تختفي الكلمة بمجرد إدخال التسجيل وتصبح الأسطوانة full version بعد التسجيل