问题描述
1,请问为什么这里的notepad.exe没物理路径.2,Process[]myprocesses;myprocesses=Process.GetProcessesByName("Notepad");foreach(Processinstanceinmyprocesses){instance.WaitForExit(1000);instance.CloseMainWindow();}这里是调用进程的什么资源,为什么要放在案Process[]数组中3,this.listBox1.Items.Add(string.Format("{0,-30}{1:h:m:s}",p.ProcessName,p.StartTime));("{0,-30}{1:h:m:s}",这个能否具体解释一下?-30什么意思?rivatevoidbutton1_Click(objectsender,EventArgse){process1.StartInfo.FileName="QQ.exe";process1.Start();}privatevoidbutton2_Click(objectsender,EventArgse){Process[]myprocesses;myprocesses=Process.GetProcessesByName("Notepad");foreach(Processinstanceinmyprocesses){instance.WaitForExit(1000);instance.CloseMainWindow();}}privatevoidbutton3_Click(objectsender,EventArgse){listBox1.Items.Clear();Process[]processes;processes=Process.GetProcesses();foreach(Processpinprocesses){if(p.ProcessName!="Idle"){this.listBox1.Items.Add(string.Format("{0,-30}{1:h:m:s}",p.ProcessName,p.StartTime));}}
解决方案
解决方案二:
................................
解决方案三:
1哪里的notepad.exe?看不到你的代码,不过大概是因为notepad.exe放在Windows目录下,Windows,System32这种目录一般会被设置到Path环境变量中,执行这些路径下的程序都不用全路径。2不是调用进程的什么资源,那个是在调用Process类的静态方法,从系统当前所有的进程中找到名字是“Notepad”的进程,因为进程可以同名,所以放在数组里。3格式化字符串,制定进程名占30个字符,左对齐。参考:格式项的语法是{索引[,对齐方式][:格式字符串]},它指定了一个强制索引、格式化文本的可选长度和对齐方式,以及格式说明符字符的可选字符串,其中格式说明符字符用于控制如何设置相应对象的值的格式。格式项的组成部分包括:索引从零开始的整数,指示对象列表中要格式化的元素。如果由索引指定的对象为nullNothingnullptrnull引用(在VisualBasic中为Nothing),则格式项将被空字符串("")替换。对齐方式可选整数,指示包含格式化值的区域的最小宽度。如果格式化值的长度小于对齐方式,则用空格填充该区域。如果对齐方式为负,则格式化值将在该区域中左对齐;如果对齐方式为正,则格式化值将右对齐。如果没有指定对齐方式,则该区域的长度为格式化值的长度。如果指定对齐方式,则需要使用逗号。格式字符串可选的格式说明符字符串。如果没有指定格式字符串,并且对应的参数实现了IFormattable接口,则将nullNothingnullptrnull引用(在VisualBasic中为Nothing)用作IFormattable..::.ToString格式字符串。因此,IFormattable..::.ToString的所有实现都必须允许nullNothingnullptrnull引用(在VisualBasic中为Nothing)作为格式字符串,并以String对象的形式返回对象表示形式的默认格式设置。如果指定格式字符串,则需要使用冒号。