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

أبسط كود لتخفيض أمان الأكسس برمجياً لجميع نسخ الأوفيس

بدأه mas123 في 5 نوفمبر 2011 · 26 رد · 3,846 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

54645sd.gif

............

rffsdfsd.gif

............

أحببت أن أقدم هدية لأحبابي أعضاء وزوار منتدىات الفريق العربي للبرمجة

المدرسة الأولى التي تعلمت منها اساسيات برمجة الأوفيس وخاصة الأكسس

فتوكلت على الله

وقمت بعمل أبسط كود لتخفيض أمان الأكسس برمجياً لجميع إصدارات الأوفيس

حتى التي لم تصدر منها بعد

17418136.gif

ولقد تعلمت في هذا الصرح أن

المبرمج الحق الذي يؤدي ما هو مطلوب بأقل كود ممكن بل قل بأقل عدد لحروف الكود إن أمكن

65250983.gif

وكنت قد أصدرت قبل ذلك ملفات كثيرة صغيرة الحجم جداً وتؤدي مهام كبيرة جداً

سميت هذه السلسلة

ما خف وزنه وغلا ثمنه

كان منها على سبيل المثال

القرآن بالصوت والصورة

إرسال البريد من الأكسس مباشرة

أصغر كود لقراءة وتغيير دقة الشاشة

وغيرها الكثير

67997493wd7.gif

وأخيرا وليس بآخر

أتقدم بالشكر لكل من :

الأستاذة الكبيرة زهرة المنتدى

والأستاذ ابي ياسر

على كل ما قدموه في هذا المجال

546456.gif

لا تنس تقييم الموضوع

وترشيح صاحبه

ولا تنسوا أخاكم محمد صالح من صالح دعائكم

MasAcessSecurity_mdb.rar

تم تعديل هذه المشاركة بواسطة mas123 في 5 نوفمبر 2011 في 07:30

2

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#2
mas123 كتب:

54645sd.gif

............

rffsdfsd.gif

............

أحببت أن أقدم هدية لأحبابي أعضاء وزوار منتدىات الفريق العربي للبرمجة

المدرسة الأولى التي تعلمت منها اساسيات برمجة الأوفيس وخاصة الأكسس

فتوكلت على الله

وقمت بعمل أبسط كود لتخفيض أمان الأكسس برمجياً لجميع إصدارات الأوفيس

حتى التي لم تصدر منها بعد

17418136.gif

ولقد تعلمت في هذا الصرح أن

المبرمج الحق الذي يؤدي ما هو مطلوب بأقل كود ممكن بل قل بأقل عدد لحروف الكود إن أمكن

65250983.gif

وكنت قد أصدرت قبل ذلك ملفات كثيرة صغيرة الحجم جداً وتؤدي مهام كبيرة جداً

سميت هذه السلسلة

ما خف وزنه وغلا ثمنه

كان منها على سبيل المثال

القرآن بالصوت والصورة

إرسال البريد من الأكسس مباشرة

أصغر كود لقراءة وتغيير دقة الشاشة

وغيرها الكثير

67997493wd7.gif

وأخيرا وليس بآخر

أتقدم بالشكر لكل من :

الأستاذة الكبيرة زهرة المنتدى

والأستاذ ابي ياسر

على كل ما قدموه في هذا المجال

546456.gif

لا تنس تقييم الموضوع

وترشيح صاحبه

ولا تنسوا أخاكم محمد صالح من صالح دعائكم

رائع بارك الله بيك اخي الكريم

#3

اخي محمد صالح

مجهود رائع وتشكر عليه

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

+

سيد الاستغفار

{ اللهم أنت ربي لا إله إلا أنت خلقتني وأنا عبدك وأنا على عهدك ووعدك ما استطعت أعوذ بك من شر ما صنعت أبوء لك بنعمتك علي وأبوء لك بذنبي فاغفر لي فإنه لا يغفر الذنوب إلا أنت}

من قالها من النهار موقنا بها فمات من يومه قبل أن يمسي فهو من أهل الجنة ومن قالها من الليل وهو موقن بها فمات قبل أن يصبح فهو من أهل الجنة .رواه البخاري

#4

شكرا لمرورك أخي lordring

وكل عام أنتم بخير

أخي الكريم malik2010

سعدت بمرورك

وفقنا الله وإياكم لكل ما يحب ويرضى

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#5

كود اكثر من رائع اخي mas123

يعطيك الصحة والعافية

يعني بدن اضافة سجلات الريجستري في ملف مسار القاعدة...ولا حتى زحدة نمطية

شي رائع

#6

السلام عليكم

اسمحوا لي بهذا السؤال البسيط كوني مبتدئ

ما هو الغرض من تخفيض امان الاكسس؟

تحيااااتي

#7

عفوا أخى الكريم ولكن تظهر معى هذه الرسالة

أنا استخدم أوفيس 2003

post-234608-026848900 1320494899_thumb.j

المرفقات
123.JPG

تم تعديل هذه المشاركة بواسطة ymz258 في 5 نوفمبر 2011 في 15:09

#8

شكرا لك أستاذنا بارك الله فيك

#9

بارك الله فيك اخي الكريم

رائع وتم التجربة بنجاح

الف شكر وان شاء الله في ميزان حسناتك

++

اذا دعتـــك قدرتك على ظلـــم الناس   فتذكر قدرة الله عليــــــك

#11

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

وفقنا الله وأياكم , وكل عام وأنتم بألف خير

#12

تحياتي

كل عام وانت بالف خير عزيزي استاذ محمد

بصراجة بعد التجربة على 2010 لم يتغير شيء...

اجرب على 2007 في جهاز اخر وارد لك ...

هناك شيء في الكود بحاجة لتعديل

تحياتي ومرة اخر الف شكر على جهودك الرائعة

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#13

ولا حتى 2007 ...

سابحث في السبب واحاول فهم الامر ...

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

تحياتي والف شكر مرة اخرى

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#14

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

الدليل ,,, قمت بعكس الرقم من 1 الى 4 أي زيادة مستوى الامان ونجحت العملية ... أما ان يكون العكس ..فلم يعمل ...

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#15

اخي الفاضل : محمد صالح وجميع اعضاء المنتدى الكرام

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

وكل عام وانتم بخير

قمت بتجربة هديتكم على اكسيس 2007 ولم يتغير اي شيء في مستوى الأمان

حيث قمت بفتح برنامج الأكسيس فقط بدون اي قواعد بيانات وقمت بزيادة الأمان الى اعلى مستوى

وقمت بتشغيل ملفكم الخاص بتخفيض الأمان الى اقل مستوى ولكن لم يحدث اي شيء بل بقي الأمان كما هو عليه والمفترض ان يتم تخفيض الأمان الى اقل مستوى لأن الكود موجود في حدث عند فتح النموذج .

اتوقع ان الخلل يكمن عند دالة الشرط IIF لأنه اثناء القراءه من الريجستري يحدث هناك تداخل بين الكتابه والقراءه عندما يتم فحص نسخة الأكسيس اذا كانت 12 > ( 97 - 2003 ) والا يعيد الكتابه للنسخ 2007 و 2010

وهنا يحدث التعارض .

بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 6 نوفمبر 2011 في 21:22

#16

بسم الله الرحمن الرحيم

وكل عام وجميع الإخوة والأخوات أعضاء فريقنا العربي للبرمجة بكل خير

أدعو الله أن نكون جميعاً في أحسن حال

ومن لم يحج هذا العام يرزقه الله حج بيته العظيم

وبعد

أشكر كل من شارك برد واستفسار لإثراء الموضوع

وأتوجه بالسؤال لآخي همام

هذا كود لقراءة قيمة في الريجيستري وإذا لم تكن هذه القيمة 1 ويعني مستوى منخفض من الأمان يجعلها الكود 1

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

مثله مثل الكود المقدم من الأخت زهرة في هذا الموضوع

/index.php?showtopic=136983

يجب تمكينه لأول مرة وبعدها تجد مستوى الأمان كما هو مطلوب

أنا أستعمل أوفيس 2010

وهذا ما يحدث عندي بالصور

هذه صورة الإعدادات قبل تشغيل الملف

48545850y.jpg

وعند فتح الملف لأول مرة تظهر رسالة تمكين المحتوى ويجب الضغط عليها

63778029.jpg

وبعد تمكين المحتوى وعمل الملف هذه صورة الإعدادات

75839515.jpg

......

ومن الطبيعي عملية تمكين المحتوى لأول مرة

لأن هذا كود ولكي يعمل يجب تمكينه وإلا كيف سيعمل

......

وبالنسبة لأختي الفاضلة وأستاذتي زهرة المنتدى وأم عهود

شرح الكود هو كالتالي وصوبي لي إن كنت مخطئاً

If CreateObject("WScript.Shell").RegRead("HKEY_CURRENT_USER\Software\Microsoft\Office\" & Application.Version & "\Access\Security\" & IIf(Application.Version < 12, "Level", "VBAWarnings")) <> "1" Then

إذا كانت قمية قراءة المسار التالي من الريجيستري لا تساوي 1

"HKEY_CURRENT_USER\Software\Microsoft\Office\" & Application.Version & "\Access\Security\" & IIf(Application.Version < 12, "Level", "VBAWarnings")

ويوجد في هذا المسار متغيران هما

نسخة الأوفيس application.version

والثاني هو مفتاح الريجيستري بعد المسار الثابت في كل إصدارات الأوفيس

"HKEY_CURRENT_USER\Software\Microsoft\Office\" & Application.Version & "\Access\Security\"

ويكون اسم المفتاح الأخير level إذا كانت نسخة الأوفيس قبل 12 يعني 2003 وما قبلها

ويكون اسم المفتاح VBAWarnings إذا كانت نسخة الأوفيس أكبر من أو يساوي 12 يعني 2007 وما بعدها

وهذا ما هو موجود في الشرط الأخير في السطر

IIf(Application.Version < 12, "Level", "VBAWarnings")

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

فلو مثلا الأوفيس 2003 يكون المسار كالتالي

"HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Access\Security\Level"

ولأوفيس 2007 يكون المسار كالتالي

"HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Access\Security\VBAWarnings"

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

وهذا ما يقوم به الكود قراءة قيمة هذا المسار بمتغيريه وإذا لم تكن 1 يقوم بكتابة القيمة 1 من نوع dword لنفس المسار

.....

وأعتقد أن هذا نفس ما سعت إليه الأستاذة زهرة في موضوعها المشار إليه

ولكن بأكواد طويلة جداً

وهنا فقط تم اختصار الكود

.....

وعذراً للإطالة

وكل عام أنتم جميعاً بكل خير

تم تعديل هذه المشاركة بواسطة mas123 في 6 نوفمبر 2011 في 19:05

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#17
ymz258 كتب:

عفوا أخى الكريم ولكن تظهر معى هذه الرسالة

أنا استخدم أوفيس 2003

أخي الكريم

كل عام أنتم بخير

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

والحل

توجه إلى أمان الماكرو وغيره إلى مرتفع ؛ ليتم إنشاء المسار أولاً

ثم اجعله متوسط

ثم استخدم الملف ووافق على تمكين الماكرو في اول مرة لعمل الملف

بعدها لن تزعجك هذه الرسالة

ولا حظ ما حدث معي في اكسس 2003

هذه صورة الإعدادات قبل تشغيل الملف

86607354.jpg

وهذه الرسائل التي تظهر قبل تشغيل الملف

يجب تمكين الماكرو بها في أول مرة

12306079.jpg

شاهد مستوى الأمان بعد تشغيل الملف

98596461.jpg

وشكرا لكل من شارك في هذا الموضوع لإثرائه

وكل عام أنتم بخير

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#18

وبناءً على ما تقدم مناقشته في المشاركات السابقة

يتم اختصار الكود أكثر مما هو عليه

بدلاً من قراءة قيمة الريجيستري في المسار المطلوب ثم تعديله إذا كانت قيمة غير 1 إلى 1

يتم إنشاء المسار إن لم يكن موجوداً وتعديله إلى 1 إذا كان موجوداً

حتى يكون بالفعل أبسط كود لتخفيض أمان الأكسس هو

CreateObject("WScript.Shell").RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Office\" & Application.Version & "\Access\Security\" & IIf(Application.Version < 12, "Level", "VBAWarnings"), "1", "REG_DWORD"

ومرفق الملف الموجود في المشاركة الأولى بعد التعديل

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

وكل عام أنتم جميعاً بكل خير

.....

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

MasAcessSecurity2.rar

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#19

الأخ ymz

الأخ همام

الأخت زهرة

.....

هل ظلت المشكلة كما هي لديكم؟

برجاء إفادتنا حتى يتم التعاون في حلها

وكل عام والجميع بكل خير

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#20

متابع معكم للاستقرار على الكود النهائي قبل اعتماده في النموذج ..

شكر للجهود المبذولة

#21
mas123 كتب:

الأخ ymz

الأخ همام

الأخت زهرة

.....

هل ظلت المشكلة كما هي لديكم؟

برجاء إفادتنا حتى يتم التعاون في حلها

وكل عام والجميع بكل خير

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#22

الحقيقة نعم ... لم يتغير شيء ....

واسف على التاخير .... انت تعرف عطلة العيد ...

تحياتي ,,,

طبعا هذا الكلام يخص كون مستوى الامان في اعلى قيمة وهي 4 اي تعطيل الكل ...

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

اظن ان الحالة الافتراضية للماكرو هي رقم 4...

تحياتي ...بارك الله فيك على مجهودك الرائع ...

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#23
همام ابوعرقوب كتب:

الحقيقة نعم ... لم يتغير شيء ....

واسف على التاخير .... انت تعرف عطلة العيد ...

تحياتي ,,,

طبعا هذا الكلام يخص كون مستوى الامان في اعلى قيمة وهي 4 اي تعطيل الكل ...

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

اظن ان الحالة الافتراضية للماكرو هي رقم 4...

تحياتي ...بارك الله فيك على مجهودك الرائع ...

أخي الكريم همام

كل عام أنتم بخير

هل جربت الكود الخاص بالأخت زهرة على المستوى الرابع وغيرّ شيئاً؟؟!!

بالطبع ...... لا .

بالنسبة للحالة الافتراضية للماكرو فهي التعطيل مع التنبيه و هي رقم 3 وليست 4

أما أن يغير المستخدم الأمان إلى المستوى 4 وهي تعطيل الكل مع عدم التنبيه فقد خسر الكثير مما يتم إنجازه بالكود

وأعتقد أنه لا يقوم بذلك أحد

والحمد لله على عمل الكود لديك في المستويين الثاني والثالث وهو المطلوب منه تأديته

عقبال من لم يعمل معه الكود المختصر

تحياتي للجميع

تم تعديل هذه المشاركة بواسطة mas123 في 9 نوفمبر 2011 في 21:24

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

#24

مشكور اخي الكريم ولكن لم يتم تخفيض الامان لدي علما ان الاوفيس لدي 2010 مع فائق الشكر والاحترام

عفوا اخي الكريم لقد قمت بمراجعة المشاركات واجريت تغيير على مستوى الامان عند 3 او 2 يعمل الكود مافي اي مشكلة ولكن عند 4 لايعمل والسبب عدم تمكين الكود عدن اعلام واعتقد الافتراضي للبرنامج هو 3 والشكر لك مرة ثانية

تم تعديل هذه المشاركة بواسطة حسين سعيد الابراهيمي في 9 نوفمبر 2011 في 22:32

#25
حسين سعيد الابراهيمي كتب:

مشكور اخي الكريم ولكن لم يتم تخفيض الامان لدي علما ان الاوفيس لدي 2010 مع فائق الشكر والاحترام

اخي الكريم حسين

هل تابعت الموضوع من أوله؟؟!!

وهل عرفت أنه ينبغي تمكين الماكرو في الملف لأول مرة حتى يتم تنفيذ الكود الخاص بتخفيض الأمان؟؟!!

هل شاهدت الصور الخاصة بأوفيس 2010 في المشاركات؟؟!!

هل ....؟؟!!

هل ....؟؟!!

هل ....؟؟!!

التغير هو القانون الدائم للحياة.ودوام الحال من المحال

فلماذا لا نتغير بإرادتنا إلى ما نريد؟ قبل أن تغيرنا الحياة مجبرين إلى ما لا نريد؟

موقعي

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