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

سؤال: منع بناء مجلد على القرص الصلب

بدأه maayah في 16 أغسطس 2009 · 3 رد · 870 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

عندي سؤال عن طريقة منع بناء مجلد جديد على القرص الصلب

يعني اريد ان اعمل حماية للقرص الصلب من بناء اي مجلد جديد

------------------------------------------------------------------

لقد اعطاني احد الاخوة الطريقة التالية من مسجل النظام

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOTDirectoryBackgroundshellexContextMenuHandlersNew]
@="{D969A300-E7FF-11d0-A93B-00A0C90F2719}"

و من ثم قم بتغيير امتداد الملف من .txt إلى .reg

قم بإضافة الملف إلى الـ registry و ذلك بالنقر المزدوج على الملف double click

أعد تشغيل الـ process المسمى explorer.exe أو أعد تشغيل الجهاز

لإعادة إرجاع قائمة جديد قم بنفس العمل لكن يجب حذف الـ - الذي يسبق كلمة HKEY_CLASSES_ROOT

------------------------------------------------------------------

لكن بقية مشكله

اذا نسخ احد مجلد فارغ ووضعه في مكان اخر سوف ينجح

هذه الطريقة من مسجل النظام لم تفي بالغرض بالكامل

انا اريد منع بناء اي مجلد جديد

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

مع شكري ...

تم تعديل هذه المشاركة بواسطة maayah في 16 أغسطس 2009 في 21:47

#2

يمكنك استعمال الكنترول FileSystemWatcher الذي سيعلمك في كل مرة تم فيها انشاء مجلد جديد و حتى نسخه و في الحدث Created يمكنك حذفه. الحدث يحدث بعد الإنشاء و ليس قبله و يعلمك باسم و مسار المجلد أو الملف الذي تم انشاؤه.

في انتظار فكرة أحسن من باقي الأعضاء يمكنك تجربة هذا الحل...

تحياتي...

#3

اخي اريد كود توضيحي على هذه الأداة لقد

بحثت في الانترنت لكن لا يوجد تفصيل لكتابة

الكود بالشكل الصحيح

#4

لنبدأ بإنشاء مشروع جديد من نوع WindowsApplication

لنقم بزيادة كنترول FileSystemWatcher من قائمة الأدوات

على نافدة الخصائص للكنترول :

نحدد الخاصية Path على مسار المجلد الذي نريد مراقبته

نزيد اشتراكا في الحدث Created حيث سينبهنا الكنترول في حالة إنشاء ملف أو مجلد جديد

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

	Private Sub FileSystemWatcher1_Created(ByVal sender As System.Object, ByVal e As System.IO.FileSystemEventArgs) Handles FileSystemWatcher1.Created
		If System.IO.Directory.Exists(e.FullPath) Then
			MsgBox("تم إنشاء مجلد جديد.")
		End If
	End Sub

تحياتي...

1

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