تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تعلم كيف تقوم بتهيئة فلاشتك
#1
كاتب الموضوع : abdulla0991


السلام عليكم ...

في هذا الدرس سنتعلم كيف نستخدم موجه الأومر Command لتنفيذ عملية تهيئة للفلاشه.
طبعاً هذا الدرس يتناول تهيئة فلاشة ولكن يمكن تطبيقه أيضاً على اي نوع من أنواع الأقراص القابلة للكتابة.



لنبدأ فوراً ,, وندخل في الكود:


طبعاً ,, في البداية يجب ان نستورد المكتبة التالية:


كود :
[color=#000000][COLOR=#0000bb]Imports System[/color][color=#007700].[/color][COLOR=#0000bb]Diagnostics  
[/COLOR][/COLOR]



ثم نعرف المتغير التالي لتشغيل موجه الأوامر مع تنفيذ الأمر الخاص بالتهيئة:



كود :
[color=#000000][COLOR=#0000bb]Dim procInfo [/color][color=#007700]As [/color][color=#0000bb]ProcessStartInfo [/color][color=#007700]= New [/color][color=#0000bb]ProcessStartInfo[/color][color=#007700]([/color][color=#dd0000]"cmd"[/color][COLOR=#007700])  
[/COLOR][/COLOR]



من أجل كتابة أمر التهيئة نستخدم متحول من الفئة StringBuilder:



كود :
[color=#000000][COLOR=#0000bb]Dim cmd [/color][color=#007700]As New [/color][color=#0000bb]System[/color][color=#007700].[/color][color=#0000bb]Text[/color][color=#007700].[/color][color=#0000bb]StringBuilder[/color][COLOR=#007700]()  
[/COLOR][/COLOR]



مثال لتهيئة السواقة c بنظام الملفات Fat32 ومع وضع اسم السواقة myUSB ونوع التهيئة سريعة:



كود :
Format c: /FS:Fat32 /v:myUSB /q


[SIZE=4]لنبدأ في كتابة أمر التهيئة - الأمر التالي يفترض انا لدينا combobox يحتوي على جميع الفلاشات المتصلة بالجهاز:
[/SIZE]



كود :
[color=#000000][COLOR=#0000bb]cmd[/color][color=#007700].[/color][color=#0000bb]Append[/color][color=#007700]([/color][color=#dd0000]"Format " [/color][color=#007700]& [/color][color=#0000bb]cboDrive[/color][color=#007700].[/color][color=#0000bb]SelectedItem[/color][color=#007700].[/color][color=#0000bb]ToString[/color][color=#007700]().[/color][color=#0000bb]Substring[/color][color=#007700]([/color][color=#0000bb]0[/color][color=#007700], [/color][color=#0000bb]2[/color][COLOR=#007700]))  
[/COLOR][/COLOR]

طبعاً نحن نكتب اسم الفلاشة بالشكل التالي: :C اي محرف الفلاشة ثم نقطتين ولذلك قمتنا باقتطاع اول محرفين فقط من combobox.


الأن نحدد نوع نظام الملفات وأشهر الأنواع هي NTFS و Fat32:


كود :
[color=#000000][COLOR=#0000bb]cmd[/color][color=#007700].[/color][color=#0000bb]Append[/color][color=#007700]([/color][color=#dd0000]" /FS:" [/color][color=#007700]+ [/color][color=#0000bb]cboFileSystem[/color][color=#007700].[/color][color=#0000bb]SelectedItem[/color][color=#007700].[/color][color=#0000bb]ToString[/color][COLOR=#007700]())  
[/COLOR][/COLOR]

أيضاً نقوم بجلب نوع نظام الملفات من ComboBox ..


الأن نقوم بإضافة اسم الفلاشة:


كود :
[color=#000000][COLOR=#007700]If ([/color][color=#0000bb]txtName[/color][color=#007700].[/color][color=#0000bb]Text[/color][color=#007700].[/color][color=#0000bb]Trim[/color][color=#007700]().[/color][color=#0000bb]Length [/color][color=#007700]> [/color][color=#0000bb]0[/color][color=#007700]) [/color][COLOR=#0000bb]Then
    cmd[/COLOR][color=#007700].[/color][color=#0000bb]Append[/color][color=#007700]([/color][color=#dd0000]" /v:" [/color][color=#007700]& [/color][color=#0000bb]txtName[/color][color=#007700].[/color][color=#0000bb]Text[/color][color=#007700].[/color][color=#0000bb]Trim[/color][COLOR=#007700])
[/COLOR][color=#0000bb]End [/color][COLOR=#007700]If  
[/COLOR][/COLOR]
أظن انها واضحة .. في حال لم يكتب المستخدم اسم الفلاشة فلن يتم تمرير هذه القيمة وستأخذ الفلاشة الاسم الافتراضي.


وأخيراً نحدد نوع التهيئة ,, عادية ام سريعة:


كود :
[color=#000000][COLOR=#007700]If [/color][color=#0000bb]chkQuick[/color][color=#007700].[/color][COLOR=#0000bb]Checked Then
    cmd[/COLOR][color=#007700].[/color][color=#0000bb]Append[/color][color=#007700]([/color][color=#dd0000]" /q"[/color][COLOR=#007700])
[/COLOR][color=#0000bb]End [/color][COLOR=#007700]If  
[/COLOR][/COLOR]

في حال اختار المستخدم تهيئة عادية فلن يتم تمرير هذه القيمة لأنها هي الافتراضية ,, ولكن رجاءاً أخوتي لا تجربوا التهيئة العادية لأنها ممكن تستغرق نصف إذا كانت الفلاشة سعتها كبيرة.


بعد الانتهاء من كتابة الأمر ,, سنقوم بتمريره لموجه الأوامر عبر الخطوات التالية (من اجل الشرح ارجع إلى الدرس الأول):


كود :
[COLOR=#000000][COLOR=#dd0000]'تمرير الأمر إلى موجه الأوامر
procInfo.Arguments = "/c " + cmd.ToString()

'[/COLOR][COLOR=#0000bb]من أجل ان تعود العملية بنتيجة التنفيذ
procInfo[/COLOR][color=#007700].[/color][color=#0000bb]RedirectStandardOutput [/color][color=#007700]= [/color][COLOR=#0000bb]True
procInfo[/COLOR][color=#007700].[/color][color=#0000bb]UseShellExecute [/color][color=#007700]= [/color][COLOR=#0000bb]False

من أجل عرض او اخفاء نافذة موجه الأوامر
procInfo[/COLOR][color=#007700].[/color][color=#0000bb]CreateNoWindow [/color][color=#007700]= [/color][COLOR=#0000bb]True  
[/COLOR][/COLOR]



أخيراً نعرف عملية جديدة Process لتشغيل موجه الأومر ,, مع تمرير أمر التهيئة لتنفيذه:



كود :
[color=#000000][COLOR=#0000bb]Dim proc [/color][color=#007700]As [/color][color=#0000bb]Process [/color][color=#007700]= New [/color][color=#0000bb]Process[/color][COLOR=#007700]()

[/COLOR][COLOR=#0000bb]تحديد معلومات تنفيذ العملية
proc[/COLOR][color=#007700].[/color][color=#0000bb]StartInfo [/color][color=#007700]= [/color][COLOR=#0000bb]procInfo

proc[/COLOR][color=#007700].[/color][color=#0000bb]Start[/color][COLOR=#007700]()  
[/COLOR][/COLOR]

الخطوة الأخيرة ,, قراءة ناتج العملية لكي نعرف هل نجحت عملية التهيئة ام فشلت:



كود :
[COLOR=#000000][COLOR=#0000bb] قراءة النتيجة
Dim result [/COLOR][color=#007700]As [/color][color=#0000bb]String [/color][color=#007700]= [/color][color=#0000bb]proc[/color][color=#007700].[/color][color=#0000bb]StandardOutput[/color][color=#007700].[/color][color=#0000bb]ReadToEnd[/color][COLOR=#007700]()

If [/COLOR][color=#0000bb]result[/color][color=#007700].[/color][color=#0000bb]IndexOf[/color][color=#007700]([/color][color=#dd0000]"Format Complete"[/color][color=#007700], [/color][color=#0000bb]StringComparison[/color][color=#007700].[/color][color=#0000bb]OrdinalIgnoreCase[/color][color=#007700]) >= [/color][COLOR=#0000bb]0 Then
    MsgBox[/COLOR][color=#007700]([/color][color=#dd0000]"تمت عملية التهيئة بنجاح !"[/color][color=#007700], [/color][color=#0000bb]MsgBoxStyle[/color][color=#007700].[/color][color=#0000bb]Information [/color][color=#007700]+ [/color][color=#0000bb]MsgRighToLeft[/color][COLOR=#007700])
Else
    [/COLOR][color=#0000bb]MsgBox[/color][color=#007700]([/color][color=#dd0000]"فشلت عملية التهيئة .. هذه نتيجة العملية:" [/color][color=#007700]& [/color][color=#0000bb]vbCrLf [/color][color=#007700]& [/color][color=#0000bb]result[/color][color=#007700], [/color][color=#0000bb]MsgBoxStyle[/color][color=#007700].[/color][color=#0000bb]Critical [/color][color=#007700]+ [/color][color=#0000bb]MsgRighToLeft[/color][COLOR=#007700])
[/COLOR][color=#0000bb]End [/color][COLOR=#007700]If  
[/COLOR][/COLOR]


وبس خلاص ,, انتهى هذا الدرس السريع الخفيف ...



تحميل الكود


}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  هل تعلم؟ Aly El-Haddad 7 1,259 17-08-15, 01:59 AM
آخر رد: عبد الله
  بشرى لكل من يريد تعلم البرمجة بالفيجوال بيسك دوت نت arbtech 8 1,595 21-08-13, 11:32 PM
آخر رد: arbtech
  تعلم أستخدام My.Settings لحفظ التغييرات عند الإغلاق Aly El-Haddad 15 2,720 13-06-13, 05:32 PM
آخر رد: ابراهيم
  تعلم إضافة ألعاب الفلاش و مقاطع الفيديو الفلاشية إلى برنامجك Aly El-Haddad 1 763 13-04-13, 06:46 PM
آخر رد: Sajad
  معلومة :: تعلم كيف تحفظ صورة في My.Settings بدون الإحتياج إلى مسارها! أسامة أحمد 3 1,022 16-12-12, 06:25 PM
آخر رد: 3amo
  تعلم كيف تصنع برنامج Notepad او مايسمى بالمفكرة AHMED`AMIN 8 1,885 10-10-12, 02:45 PM
آخر رد: مبرمج أوتار
  للمبتدئين --->> تعلم ( Select Case ) بالشرح مع المثال RaggiTech 0 1,315 10-10-12, 09:17 AM
آخر رد: RaggiTech
  هل تريد تعلم السي شارب -اذن هذا هو المدخل- RaggiTech 0 425 05-10-12, 02:53 AM
آخر رد: RaggiTech
  كيف تقوم بإضافة إجراءاتك الخاصة إلى مجال الأسماء My- توسيع مجال الأسماء My في VB2005 RaggiTech 0 309 05-10-12, 01:49 AM
آخر رد: RaggiTech
  معلومة -- كيف تقوم بطباعة الـ RichTextBox كما هو منسق RaggiTech 0 517 04-10-12, 11:53 AM
آخر رد: RaggiTech

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


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