حذف مجلد به ملفات ادارية - ali.alfoly - 22-08-13
جزاك الله خيرا على المعلومات المفيدة دى
والله ممتاز جدا وافتدنى كثيرا
طيب اسمحلى اوضح ليك نقطه
لالغاء اى سمة انت لست بحاجه للاستعلام عنها اثناء الغائها وهذه فى حد ذاتها ميزه تجعل الكود صغير
واثناء عكس الغاء السمة ادخل السمة مباشر
اريد منك جرب كودك مرة اخرى سيتضح لك عدم الغاء السمة وعدم حذف الملف
انظر الكود ده وقلى ايه رائيك
كود :
[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]
حذف مجلد به ملفات ادارية - ali.alfoly - 22-08-13
تعديل اخر
كود :
[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]
حذف مجلد به ملفات ادارية - MSDOS - 22-08-13
جزاك الله خير أخي
تم التصحيح للكود في المشاركة #8
أخي طريقتك سوف تقوم بحذف كل السمات الأخرى (يمكنك التأكد من ذلك).
حذف مجلد به ملفات ادارية - MSDOS - 22-08-13
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))
حذف مجلد به ملفات ادارية - ali.alfoly - 22-08-13
ههههههههههه
انا راسى اتلخبطط والله
ارجوك وضحلى الفرق بين And Not و Xor
حذف مجلد به ملفات ادارية - MSDOS - 22-08-13
لا أعرف درجة معرفتك بالعمليات المنطقية
شاهد هذه العمليات
أولا نسترجع القيم بال بت 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
ما أدري هل صعبة عليك أم لا......
|