السلام عليكم و رحمة الله ،،
شفت نفسي لدي وقت فاضي ممكن استغله ،، سأضع مجموعة من الدروس ان شاء الله عن ال Processes and Threads سأحتاجها انا شخصيا في المستقبل ، قلت اكتبها من هسه و اضعها هنا ، حسب وقت فراغي.
سنتكلم اليوم قليلا عن ال Process
أولا المقصود ب Processes هي البرامج التي تعمل ألان في النظام.
A process represents a single instance of a program. If another copy of the program is running at the same time, each instance of the program creates a new process.(1)
لمعرفة و مشاهدة البرامج (processes) التي تعمل ألان في الحاسبة ، هنالك عدة برامج ربما من أشهرها ال Task Manager الذي يأتي مع نظام التشغيل ويندوز.
اضغط على Ctrl + Alt + Del و سيظهر لك البرنامج
ال Tab الخاص بالProcess يظهر أسماء الProcess مع معلومات عن كل Process أهمها هو ال PID ، وهو عبارة عن رقم unique يقوم نظام التشغيل بإعطاء كل Process رقم معين يتم تميزها من خلاله.
أيضا من خلال البرنامج ، من قائمة View-->Select Columns
يمكن التحكم بالمعلومات التي تظهر ، مثلا يمكن أظهار الأسبقية الخاصة بكل Process
و غيرها.
Working with Processes in C#
ألان بالعودة إلى ال C# وكيفية التعامل مع الProcess من خلالها.
أولا سنتعلم كيفية أظهار الProcess لتي تعمل في النظام ، أي عمل شيء مشابه لواجهة ال Task Manager الخاصة بإظهار الProcess لكن بصورة مبسطة سنقوم بإظهار بعض المعلومات.
ال C# وفرت class يمكن من خلاله التعامل مع الProcess هو Process class.
The .NET Process Class
The System.Diagnostics namespace includes the Process class, which is used within a C# program to retrieve and set information for individual processes running on the system. The Process class can start, stop, control, and monitor processes, all from within your program(1).
سنكون تطبيق بسيط لإظهار أسماء الProcess و الرقم الخاص بكل Process.
كالأتي:
عبارة عن ListView control يحوي على عمودين
والبرمجة ستكون كالأتي في الحدث Load
ListViewItem obj;
private void Form1_Load(object sender, EventArgs e)
{
foreach (Process thisproc in Process.GetProcesses())
{
obj = new ListViewItem(thisproc.Id.ToString());
obj.SubItems.Add(thisproc.ProcessName);
listView1.Items.Add(obj);
}
label2.Text += listView1.Items.Count;
}استخدمنا الدالة GetProcesses للحصول على البرامج التي تعمل الان في النظام ثم قمنا بأضافة اسم الProcess و رقمها الى ال ListView.
ممكن إضافة أعمدة أخرى إلى ال ListView وإظهار معلومات أخرى من ال Process class .
يتبع...

