تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
حذف مجلد به ملفات ادارية
#11
جزاك الله خيرا على المعلومات المفيدة دى
والله ممتاز جدا وافتدنى كثيرا

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

انظر الكود ده وقلى ايه رائيك


كود :
[color=#0000FF]For[/color] [color=#0000FF]Each[/color][color=#000000] Fil [/color][color=#0000FF]As[/color] [color=#0000FF]String[/color] [color=#0000FF]In[/color][color=#000000] IO.[/color][color=#2B91AF]Directory[/color][color=#000000].GetFiles(_Pth(1))[/color]
[color=#000000]                IO.[/color][color=#2B91AF]File[/color][color=#000000].SetAttributes(Fil, 4 [/color][color=#0000FF]Xor[/color][color=#000000] 4)[/color]
            [color=#0000FF]Next[/color]
[color=#000000]            System.IO.[/color][color=#2B91AF]Directory[/color][color=#000000].Delete(_Pth(1), [/color][color=#0000FF]True[/color][color=#000000])[/color]
الرد }}}
تم الشكر بواسطة:
#12
تعديل اخر

كود :
[color=#0000FF]For[/color] [color=#0000FF]Each[/color][color=#000000] Fil [/color][color=#0000FF]As[/color] [color=#0000FF]String[/color] [color=#0000FF]In[/color][color=#000000] IO.[/color][color=#2B91AF]Directory[/color][color=#000000].GetFiles(_Pth(1), [/color][color=#A31515]"*"[/color][color=#000000], 1)[/color]
[color=#000000]                IO.[/color][color=#2B91AF]File[/color][color=#000000].SetAttributes(Fil, 4 [/color][color=#0000FF]Xor[/color][color=#000000] 4)[/color]
            [color=#0000FF]Next[/color]
[color=#000000]            System.IO.[/color][color=#2B91AF]Directory[/color][color=#000000].Delete(_Pth(1), [/color][color=#0000FF]True[/color][color=#000000])[/color]

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


كود :
[color=#0000FF]For[/color] [color=#0000FF]Each[/color][color=#000000] Fil [/color][color=#0000FF]As[/color] [color=#0000FF]String[/color] [color=#0000FF]In[/color][color=#000000] IO.[/color][color=#2B91AF]Directory[/color][color=#000000].GetFiles(_Pth(1), [/color][color=#A31515]"*"[/color][color=#000000], 1)[/color]
            [color=#0000FF]If[/color][color=#000000] (IO.[/color][color=#2B91AF]File[/color][color=#000000].GetAttributes(Fil) [/color][color=#0000FF]And[/color][color=#000000] 4) = IO.[/color][color=#2B91AF]FileAttributes[/color][color=#000000].System [/color][color=#0000FF]Then[/color]
[color=#000000]                IO.[/color][color=#2B91AF]File[/color][color=#000000].SetAttributes(Fil, 4 [/color][color=#0000FF]Xor[/color][color=#000000] 4)[/color]
            [color=#0000FF]End[/color] [color=#0000FF]If[/color]
        [color=#0000FF]Next[/color]
الرد }}}
تم الشكر بواسطة:
#13
جزاك الله خير أخي

تم التصحيح للكود في المشاركة #8


أخي طريقتك سوف تقوم بحذف كل السمات الأخرى (يمكنك التأكد من ذلك).
الرد }}}
تم الشكر بواسطة:
#14
ali.alfoly كتب :[b]سيتضح لك عدم الغاء السمة وعدم حذف الملف[/CODE]


مشاركتي كانت عن تغيير السمات للملف بشكل محدد،
بغض النظر عن ما تريد أن تفعل بالملف بعد ذلك.

كود :
''Hiddenو System إضافة سمة
IO.File.SetAttributes("مسار ملف", IO.File.GetAttributes("مسار ملف") Or (IO.FileAttributes.System + IO.FileAttributes.Hidden))


''Hiddenو System إزالة سمة
IO.File.SetAttributes("مسار ملف", IO.File.GetAttributes("مسار ملف") And Not (IO.FileAttributes.System + IO.FileAttributes.Hidden))
الرد }}}
تم الشكر بواسطة:
#15
ههههههههههه
انا راسى اتلخبطط والله
ارجوك وضحلى الفرق بين
And Not و Xor
الرد }}}
تم الشكر بواسطة:
#16
لا أعرف درجة معرفتك بالعمليات المنطقية

شاهد هذه العمليات

أولا نسترجع القيم بال بت Bit
كود :
FFFF (Word)
       ┌───────╨───────┐
      FF (Byte)       FF (Byte)
   ┌───╨───┐       ┌───╨───┐
   F       F       F       F
┌─┬╨┬─┐ ┌─┬╨┬─┐ ┌─┬╨┬─┐ ┌─┬╨┬─┐
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1  File Attribute Bits
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └──── 1     ReadOnly
│ │ │ │ │ │ │ │ │ │ │ │ │ │ └────── 2     Hidden
│ │ │ │ │ │ │ │ │ │ │ │ │ └──────── 4     System
│ │ │ │ │ │ │ │ │ │ │ │ └────────── 8     --------
│ │ │ │ │ │ │ │ │ │ │ └──────────── 16    Directory
│ │ │ │ │ │ │ │ │ │ └────────────── 32    Archive
│ │ │ │ │ │ │ │ │ └──────────────── 64    Device
│ │ │ │ │ │ │ │ └────────────────── 128   Normal
│ │ │ │ │ │ │ └──────────────────── 256   Temporary
│ │ │ │ │ │ └────────────────────── 512   SparseFile
│ │ │ │ │ └──────────────────────── 1024  ReparsePoint
│ │ │ │ └────────────────────────── 2048  Compressed
│ │ │ └──────────────────────────── 4096  Offline
│ │ └────────────────────────────── 8192  NotContentIndexed
│ └──────────────────────────────── 16384 Encrypted
└────────────────────────────────── 32768 --------

عملية And Not
لاحظ عند طبيق العملية (وهي الجزء الثاني المكرر) وكان الملف لا يملك سمة System فلن يمتلكها
النتيجة مهما كررنا استخدام And Not النتيجة سليمة كما نريدها
كود :
And Not ========================================================

0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 = ReadOnly + System + Archive

0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 = System
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 = Not System

                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 = ReadOnly + System + Archive
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 = Not System
                     ↑     ↑   ↑
-------------------------------  
                     1     1   1
                     1     0   1
------------------------------- : AND
                     1     0   1
                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 = ReadOnly + Archive



And Not ========================================================

0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 = ReadOnly + Archive

0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 = System
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 = Not System

                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 = ReadOnly + System + Archive
1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 = Not System
                     ↑     ↑   ↑
-------------------------------  
                     1     0   1
                     1     0   1
------------------------------- : AND
                     1     0   1
                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 = ReadOnly + Archive


عملية XOR
لاحظ عند طبيق العملية (وهي الجزء الثاني المكرر) وكان الملف لا يملك سمة System فسوف يمتلكها
النتيجة عند تكرار العملية باستخدام XOR فسوف تكون غير سليمة وليست كما نريدها
كود :
XOR ========================================================

0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 = ReadOnly + System + Archive

0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 = System

                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 = ReadOnly + System + Archive
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 = System
                     ↑     ↑   ↑
-------------------------------  
                     1     1   1
                     0     1   0
------------------------------- : XOR
                     1     0   1
                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 = ReadOnly + Archive


XOR ========================================================

0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 = ReadOnly + Archive

0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 = System

                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 = ReadOnly + Archive
0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 = System
                     ↑     ↑   ↑
-------------------------------  
                     1     0   1
                     0     1   0
------------------------------- : XOR
                     1     1   1
                     ↓     ↓   ↓
0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 = ReadOnly + System + Archive

ما أدري هل صعبة عليك أم لا......
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم