欢迎来到天天文库
浏览记录
ID:49948288
大小:854.50 KB
页数:37页
时间:2020-03-03
《网络程序设计实验指导书.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、网络程序设计实验指导书实验教案(主要界面及代码)学院:计算机科学与技术专业:非师范年级:2009一、实验名称:实验一进程与线程(4学时)二、仪器、设备:教学机房1、安装有vs2008的计算机三、参考资料:C#网络应用编程四、实验目的(1)掌握进程查看、启动、停止的基本方法;(2)掌握线程创建、启动、终止的基本方法;(3)掌握开辟多线程的基本方法;(4)掌握在一个线程中引用其他线程中的控件的方法;五、实验重点、难点开辟多线程的基本方法;在一个线程中引用其他线程中的控件的方法六、实验内容1.观察本机运行的所有进程,并显示进程相关的信息。要求:(1)用DataGri
2、dView显示所有进程信息(2)鼠标单击DataGridView某处时,判断单击的是否为行开头或者某个单元格,如果是,显示该行进程的详细信息2.在Class1类中声明两个方法Method1和Method2,其中Method1不停地输出字符“a”,Method2不停地输出字符“b”,在Form1中启动线程执行Method1和Method2,并在RichTextBox中显示线程输出的字符。七、实验原理1在VS2008下新建Windows窗体应用程序,并编写如下代码,并调试运行。namespaceProcessMonitor{publicpartialclassFo
3、rm1:Form{Process[]myProcess;publicForm1(){InitializeComponent();dataGridView1.AllowUserToAddRows=false;dataGridView1.AutoResizeColumns();dataGridView1.AutoSizeColumnsMode=DataGridViewAutoSizeColumnsMode.AllCells;dataGridView1.MultiSelect=false;}privatevoidForm1_Load(objectsender,Eve
4、ntArgse){GetAllProcess();}privatevoidGetAllProcess(){dataGridView1.Rows.Clear();myProcess=Process.GetProcesses();foreach(ProcesspinmyProcess){intnewRowIndex=dataGridView1.Rows.Add();DataGridViewRowrow=dataGridView1.Rows[newRowIndex];row.Cells[0].Value=p.Id;row.Cells[1].Value=p.Proce
5、ssName;row.Cells[2].Value=string.Format("{0:###,##0.00}MB",p.WorkingSet64/1024.0f/1024.0f);//有些进程无法获取启动时间和文件名信息,所以要用try/catchtry{row.Cells[3].Value=string.Format("{0}",p.StartTime);row.Cells[4].Value=p.MainModule.FileName;}catch{row.Cells[3].Value="";row.Cells[4].Value="";}}}private
6、voidShowProcessInfo(Processp){StringBuildersb=newStringBuilder();sb.AppendLine("进程名称:"+p.ProcessName+",ID:"+p.Id);try{sb.AppendLine("进程优先级:"+p.BasePriority+"(优先级类别:"+p.PriorityClass+")");ProcessModulem=p.MainModule;sb.AppendLine("文件名:"+m.FileName);sb.AppendLine("版本:"+m.FileVersionIn
7、fo.FileVersion);sb.AppendLine("描述:"+m.FileVersionInfo.FileDescription);sb.AppendLine("语言:"+m.FileVersionInfo.Language);sb.AppendLine("------------------------");if(p.Modules!=null){ProcessModuleCollectionpmc=p.Modules;sb.AppendLine("调用的模块(.dll):");for(inti=1;i8、ndLine("模块名:"+pmc[i
8、ndLine("模块名:"+pmc[i
此文档下载收益归作者所有