الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف اعرف وقت التسجيل في البرنامج

مغلق
بدأه المبرمج2003 في 1 يونيو 2004 · 9 رد · 682 مشاهدة · في منتدى الشبكات العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

يا اصحاب الخبرة

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

طبيعة عمل البرنامج

يقوم كل موظف بادخال الرقم الخاص به (الرقم السري) فقط بعدها يفتح له البرنامج يقوم البرنامج بتسجيل الوقت الذي حظر فيه (تلقائي) المشكلة انه يسجل الوقت حق جهازه وبهذا يقدر يغير في الوقت زي ما يبي يعني لو كان حظر الساع 8.30 يقدر يرجع الوقت 7.30 ويفتح البرنامج ويدخل رقمه السري وبعد ما يفتح البرنامج يسجل الوقت اللي هو حاطه لجهازه 7.30

الذي اريده فقط ان يقوم البرنامج بتسجيل الوقت الخاص بجهازي انا حتى يسجل الوقت الصحيح او انه يسجل الوقت حق السيرفر وبهذا تنتهي المشكلة

واذا اردتم ارفاق الملف للتوضيح سوف ارفقه مع ان السؤال واضح

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

وشكر

اخوكم /المبرمج 2003

ريح من الزفرات تعصف في الحشى &&& و ورائها مطر من العبرات

ابو حسن

#2

السلام عليكم ,,

المشكلة سهلة باذن الله ويمكن حلها بأكثر من طريقة ,,

الطريقة الأولى :

اقتباس
انا مسوي برنامج خاص بحظور الموظفين

بما أنك أنت من كتبت البرنامج ,, فيمكنك تغيره بكل تأكيد ,, فقط اجعل بنية البرنامج على شكل Client Server وغير البرنامج الرئيسي لكي لايستطيع أن يدخل بياناته بشكل مباشر الى الملفات المشتركة في السيرفر ,,,

واكتب برنامج Server بحيث يستقبل اتصالات ال client ,, ويتكفل بكتابة بيانات الكلاينت ,, ولايكتب الزمن من اللاينت لكن يكتبه من السيرفر ,, لأن البرنامج الذي يكتب سيكون في السيرفر ,,

الحل الثاني ,, أن تجعل قاعدة البيانات في السيرفر بال SQL وأن تضع في خانة الوقت القيمة الافتراضية gettime() بهذا سيتم تخزين الوقت الحقيقي في السيرفر وبلا أي تلاعب ,,

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

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#3

ممكن من ناحية اخرى ان تستخدم شبكة من نوع دومين وفي الشبكة من نوع دومين لا يستطيع ان يغير ساعة النظام احد غير مجموعة المدراء ومجموعة البوريوزر وان حاول تغيير الساعة سوف يخرج جهازه من الشبكة ولن يكون هناك اتصال مع السيرفر الذي تكون عليه البرنامج كما قال اخي ان تعمل البرنامج client server

وبالتوفيق

#4

يمكنك ذلك اخي .. بسهولة كما وضح اخي GoldNuil اذا كانت شبكتك دومين ..

عن طريق استخدام ال User Rights ... و تحديد Chanage The System time Right ...

و هي التي تسمح لك بتحديد من من صلاحياته القيام بتغير الوقت و التاريخ للجهاز ..

و يمكنك تعديل هذه ال Rights من ال Group Policy و من ال Local Secuirty الموجود بال Admin Tools ...

و بالنسبة لصلاحيات تغير الوقت الافتراضية فهي بالنسبة للعملاء و ال Member Servers

هم :

Administrators & Power Users

اما بالنسبة للدومين كنترولر :

Administrators & Server Operators

لمزيد من المعلومات اليك الرابط

و تحياتي ..

صدمة عندما تفسر كلماتك وأفعالك على أنها كلمات حاقد...

صدمة عندما يُجحد عطائك..

صدمة عندما يذهب كل ما بنيته أدراج الرياح ..

صدمة عندما تمد يديك للناس بالخير وترد خائبا...

#5

ماشاء الله ,, حل عملي منكم أخواي goldnoil و محمد يونس ,, بدون الدخول في تفاصيل برمجة :)

شكرا لكم ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#6

اخي HGB .. مع انه يمكن حل هذه المشكلة بدون الدخول في تفاصيل برمجية ..

لكني اعتقد ان الحل البرمجي افضل ما دام هو مصمم البرنامج و معه ال Source Code ..

حيث ان هذه الطريقة تعتمد في حالها علي ال Group Policy ..

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

بجانب اهم شئ و هي ان ال Group Policy غير فعالة علي النظم القديمة مثل Win98 و Me .. فقط 2000 و 2003 و XP .. و هذا يعتبر مشكلة في حالة النظم القديمة ..

و ان كان لها حل .. انظر الرابط و و هذا ايضا

انا قمت بعرض هذا الحل .. للفائدة فقط .. و لكن اذا كان بأمكانه تنفيذ الحل البرمجي .. فأنا مع ما عرضه اخي HGB ...

و تحياتي ...

صدمة عندما تفسر كلماتك وأفعالك على أنها كلمات حاقد...

صدمة عندما يُجحد عطائك..

صدمة عندما يذهب كل ما بنيته أدراج الرياح ..

صدمة عندما تمد يديك للناس بالخير وترد خائبا...

#7

ممتاز كلامك في محله أخي محمد يونس ,, مع أنه يمكن أن نلعب بال Group Policy من السي++ أيضا من الانعكاسات الخاصة بها على الرجستري ,, لكن حل ال Client/Server أو ال SQL كلاهما يغني ,, فقط ننتظر صاحب الموضوع ليعلق وننظر ماذا نفعل بعد ذلك ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#8

اشكر كل من ساهم في المشاركة والرد

انا ارفقت لكم مثال توضيحي ارجو ان يكون واضح

تكفون يا شباب البرنامج منتهي وموقفينه علشان هذي النقطة

وشكرا مرة اخرى

الوقت.rar

ريح من الزفرات تعصف في الحشى &&& و ورائها مطر من العبرات

ابو حسن

#9

شكرا لك HGP اطرائك

لكن انا لدي وجهة نظر انه باستخدام الGPO سيكون افضل لعدة اسباب منها

امكانية اكبر بالتحكم وكذلك التوافقية الاكبر مع الويندوز من البرنامج نفسه انا اكتب بلغة السي ++ ومع ذلك احاول جهدي ان استفيد من ميزات نظام التشغيل قبل البدء في كتابة كود خاص بي كما قال اخي HGB من السي استطيع التحكم من انعكاسات الريجيستري وخاصة من له خبرة في التعامل مع الريجيستري وخفاياه

اما بالنسبة للانظمة القديمة فلا توجد مشكلة تستطيع ان تطبق السياسة عليها وتضعها داخل سياسة الدومين المنطوية تحته وذلك من الRESORCE الخاص بها تستطيع ان تجعل الويندوز 98 تماما كما ال 2000 من الناحية الامنية

#10

السلام عليكم ,,

طيب كلا الحلين الحل البرمجي والحل الشبكي يغني ,,

الحل البرمجي أنا لم أتوقع أن يكون الكود مكتوب بالأكسيس ,, توقعته يكون مكتوبا بالفيجوال بيسك أو أي شيء آخر ,. المهم يوجد لديك حلين الأول الشبكي ,, وهو كما ذكر الاخوان جزاهم الله خيرا أن تغير من ال GPO ولن يستطيع ال user أن يغير ساعة نظامه أبدا ,,

الحل الثاني ,, أن تنقل البرنامج على قسم الأكسيس ,, وستجد اجابة هناك بشكل مباشر حيث أن الدالة gettime() التي ذكرتها خاصة بال SQL فتوقعت أن قاعدة البيانات بال SQL ,, لاأعرف كيف ستتطبق الدالة gettime على الأكسيس فلها طريقة مختلفة ,, لكن أنا كنت أريدها أن تكون في الجدول ,, يعني قيمتها افتراضية وكان سيتكفل بها ال SQL Server الموجود في السيرفر وليس الكلاينت ,, وكان سيكتب وقت السيرفر ,,

لكن اذا أردت نصيحتي وأن تخرج من هذه الدوشة استخدم الحل الشبكي ,, وغير في ال GPO كما ذكر أخي goldnoil ,, وستجد مايرضيك باذن الله ,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

هذا الموضوع مغلق.

مواضيع مشابهة