31-10-14, 06:20 AM
بسم الله الرحمن الرحيم
كلاس Process في الفيجوال بيسك دوت نت هو كلاس تابع لحزمة System.Diagnostics.Process
وهو مختص في التعامل مع العمليات أو التطبيقات التي تعمل في نفس الوقت ( على قيد التشغيل ) في النظام .
نتعرف على الدوال العامة الموجودة في Process :
1
هذه الدالة تقوم بتشغيل أي مسار أو مجلد أو برنامج أو رابط ملف أو رابط انترنت ...الخ
امثلة :
2
هذه الدالة تقوم بإعطائك العملية الحالية أي التطبيق الذي يعمل عليه المستخدم حاليًا
امثلة :
3
دالة تقوم بإعطائك العملية المحددة عن طريق ال ID
امثلة :
الفرق هنا في الدالة GetProcessById(1, Environment.MachineName) و الرقم ( 1 ) هنا تعني رقم العملية ( التطبيق ) قيد التشغيل. يمكن تغيره حسب الرغبة
4
هذه الدالة تقوم بإعطاء العملية عن طريق اسمها
امثلة : باستخدام الاسم (notepad) وهو برنامج المفكرة
ملاحظة مهمة : إذا كانت العملية غير موجودة ( ليست على قيد التشغيل ) سيظهر خطأ .
5
تقوم بإعطاء جميع العمليات التي تعمل في النظام
* مثال على جلب جميع العمليات ( قيد التشغيل ) في ListBox في الفورم :
كلاس Process في الفيجوال بيسك دوت نت هو كلاس تابع لحزمة System.Diagnostics.Process
وهو مختص في التعامل مع العمليات أو التطبيقات التي تعمل في نفس الوقت ( على قيد التشغيل ) في النظام .
نتعرف على الدوال العامة الموجودة في Process :
1
كود :
Process.Start("")
هذه الدالة تقوم بتشغيل أي مسار أو مجلد أو برنامج أو رابط ملف أو رابط انترنت ...الخ
امثلة :
كود :
Process.Start("C:\Saeed\") ' فتح مجلد
Process.Start("C:\Saeed\App.exe") ' تشغيل التطبيق
Process.Start("http://www.vb4arb.com") ' فتح رابط موقع
Process.Start("calc") ' فتح تطبيق الحاسبة - من تطبيقات النظام
2
كود :
Process.GetCurrentProcess()
هذه الدالة تقوم بإعطائك العملية الحالية أي التطبيق الذي يعمل عليه المستخدم حاليًا
امثلة :
كود :
MsgBox(Process.GetCurrentProcess().ProcessName) ' تقوم بإعطاء اسم العملية
MsgBox(Process.GetCurrentProcess().MainWindowTitle) ' تقوم بإعطاء اسم النافذة الأساسية في التطبيق
MsgBox(Process.GetCurrentProcess().Responding) ' تقوم بإخبار ما اذا كان التطبيق يستجيب أو لا
MsgBox(Process.GetCurrentProcess().Modules(0).FileName) ' تقوم بإعطاء رابط المسار الكامل للتطبيق
Process.GetCurrentProcess().Kill() ' تقوم بإغلاق العملية
3
كود :
Process.GetProcessById
دالة تقوم بإعطائك العملية المحددة عن طريق ال ID
امثلة :
كود :
MsgBox(Process.GetProcessById(1, Environment.MachineName).ProcessName) ' تقوم بإعطاء اسم العملية
MsgBox(Process.GetProcessById(1, Environment.MachineName).MainWindowTitle) ' تقوم بإعطاء اسم النافذة الأساسية في التطبيق
MsgBox(Process.GetProcessById(1, Environment.MachineName).Responding) ' تقوم بإخبار ما اذا كان التطبيق يستجيب أو لا
MsgBox(Process.GetProcessById(1, Environment.MachineName).Modules(0).FileName) ' تقوم بإعطاء رابط المسار الكامل للتطبيق
Process.GetProcessById(1, Environment.MachineName).Kill() ' تقوم بإغلاق العملية
الفرق هنا في الدالة GetProcessById(1, Environment.MachineName) و الرقم ( 1 ) هنا تعني رقم العملية ( التطبيق ) قيد التشغيل. يمكن تغيره حسب الرغبة
4
كود :
Process.GetProcessesByName
هذه الدالة تقوم بإعطاء العملية عن طريق اسمها
امثلة : باستخدام الاسم (notepad) وهو برنامج المفكرة
كود :
MsgBox(Process.GetProcessesByName("notepad")(0).MainWindowTitle) ' تقوم بإعطاء عنوان برنامج المفكرة
MsgBox(Process.GetProcessesByName("notepad")(0).Responding) ' تقوم بالإخبار ما اذا كان التطبيق يستجيب أم لا
MsgBox(Process.GetProcessesByName("notepad")(0).Modules(0).FileName) ' تقوم بإعطاء مسار برنامج المفكرة
Process.GetProcessesByName("notepad")(0).Kill() 'إغلاق برنامج المفكرة إذا كان يعمل
ملاحظة مهمة : إذا كانت العملية غير موجودة ( ليست على قيد التشغيل ) سيظهر خطأ .
5
كود :
Process.GetProcesses
تقوم بإعطاء جميع العمليات التي تعمل في النظام
* مثال على جلب جميع العمليات ( قيد التشغيل ) في ListBox في الفورم :
كود :
Dim ps() As Process = Process.GetProcesses(Environment.MachineName)
For Each p As Process In ps
Me.ListBox1.Items.Add(p.ProcessName) ' تقوم بإعطاء اسماء جميع العمليات التي على قيد التشغيل
' وجميع الأوامر التي سبق ذكرها في الامثلة السابقة يمكن استخدامها على نفس الطريقة
Next