أخواني الأعزاء
هل يمكن التحكم بخصائص المجلد من خلال الكود كجعل المجلد متاح للمشاركة بين المستخدمين العاديين للجهاز وطبعاً دون السماح بحذفه أو تغيير اسمه من قبلهم
تقبلوا تحياتي
بالنسبة للتحكم بالمجلد لمشاركة وصلاحيتها انصحك بقرائة ويندوزباور شيل ومن ثم تنفيذة من داخل برنامجك اسهل بكثير
اخي العزيز oneyemenweb2 هل لديك رابط لهذا الموضوع يساعدني في ذلك جزاك الله خيرا
أخواني الأكارم
محتاج مساعدتكم لإنشاء مجلد رئيسي
بواسطة الكود لكن أن يكون
مشترك لكل المستخدمين مع
عدم إمكانية حذفه أو تغيير إسمه إلا من قبل المسؤول
مع العلم أني استخدم الكود التالي لإنشاء المجلد
كود :
If Not Directory.Exists("C:\My Folder") Then Directory.CreateDirectory("C:\My Folder").Attributes = FileAttributes.Hidden
وقد حصلت على الكود التالي لجعل المجلد مشترك
كود :
Try
Dim managementClass As New ManagementClass("Win32_Share")
Dim inParams As ManagementBaseObject = managementClass.GetMethodParameters("Create")
inParams("Description") = "My Description"
inParams("Name") = "Share Name"
inParams("Path") = "C:\My Folder"
inParams("Type") = &H0
Dim outParams As ManagementBaseObject = managementClass.InvokeMethod("Create", inParams, Nothing)
If Convert.ToUInt32(outParams.Properties("ReturnValue").Value) <> 0 Then
MessageBox.Show("Unable to share directory.")
Else
MessageBox.Show("Shared folder successfully!")
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
إلا أني لم أتمكن من إضافة خاصية عدم الحذف أو تغيير الاسم، لذا أرجو منكم أخواني مساعدتي أو إرشادي لما هو مناسب لحل هذا الموضوع
مع جزيل الشكر والامتنان
أخواني
توصلت إلى الحل لتحديد صلاحية عدم تمكين مستخدم معين من حذف مجلد معين أو تغيير اسمه وإليكم الكود:
كود :
Dim UserAccount As String = "Everyone"
Dim FolderInfo As IO.DirectoryInfo = New IO.DirectoryInfo("C:\My Folder")
Dim FolderAcl As New DirectorySecurity
FolderAcl.AddAccessRule(New FileSystemAccessRule(UserAccount, FileSystemRights.Delete, InheritanceFlags.None, PropagationFlags.InheritOnly, AccessControlType.Deny))
FolderInfo.SetAccessControl(FolderAcl)
وبالتوفيق للجميع
أخواني الأعزاء
بالرغم من أن الأكواد المذكورة أعلاه فعالة وتقوم بإنشاء مجلد مشترك وبخصائص محددة إلا أن هذا المجلد يفقد خاصيته كمجلد مشترك بعد تحزيم البرنامج حيث أنه قبل التحزيم تظهر في خصائصة صفة share لكن بعد التحزيم لاتظهر هذه الصفة ولا يتم حفظ فيه اية بيانات من قبل مستخدمي نفس الجهاز مع العلم أن مسار إنشاء المجلد هو داخل المجلد الرئيسي للبرنامج
أفيدوني أخواني بما لديكم من خبرات جزاكم الله خيراً
مع خالص الشكر والتقدير لكم جميعاً
هل استخدمت برنامج التحزيم المدمج مع الفيجوال بيسك أم برنامج تجاري ؟
اخى العزيز
سبق وان طرجت سؤال بالمنتدى حول كيفية الحصول على اسماء المستخدمين الذين لهم حق الوصل
الى share folder
وبحثت كثيرا ولم اجد حل فهل يمكن المساعدة
اخي العزيز kslawy برنامج التحزيم الذي استخدمه دوما هو setup factory فهل يمكن ان يكون هذا هو السبب ولماذا ؟
أخي العزيز barakascap إن شاء الله أبحث لك عن الموضوع وأخبرك في حال توصلت للحل
بما أن المجلد الذي تريد (مشاركته) داخل المسار الرئيسي لبرنامجك لماذا لا تضع كود (المشاركة) في حدث تحميل أول فورم يفتح في برنامجك ؟