我在这个路径“C:\ Test \ test.txt”中有一个文本文件,当我打开它时我需要关闭它。
当我尝试使用下面的代码时,记事本的所有实例都在关闭,我不希望发生这种情况,我只想关闭“.txt”文件:
任何帮助将不胜感激!
这是我的代码:
Dim Process() As Process = System.Diagnostics.Process.GetProcessesByName("notepad")
For Each p As Process In Process
p.Kill()
Next
答案 0 :(得分:2)
您可以查看
Process.MainWindowTitle
p
的属性。
记事本的标题为Filename.txt - Notepad
如果您自己启动了该过程,则可以使用Process.Kill()
方法将其终止。
请注意,在许多(大多数?)情况下,杀死进程的所有实例并不是一个好的用户体验,因为除了程序启动的实例之外,用户可能已经自己启动了该进程的实例试图关闭。
答案 1 :(得分:1)
你可以做一些关于使用if语句的事情。假设您打开了名为test的文件。
Dim Process() As Process = System.Diagnostics.Process.GetProcessesByName("notepad")
For Each p As Process In Process
If p.MainWindowTitle.Contains("test") Then
p.Kill()
End If
Next
编辑:
检查多个文件
只需添加或包含.Contains行
If p.MainWindowTitle.Contains("test") Or ("blahblah") Then
p.kill()