我能够使用Process类在Windows上运行进程,而不是过滤主题,以便打开一个窗口。 但是,我不需要进程名称,而是应用程序的名称。例如Microsoft Office Word的进程名称是WINWORD,但我想获取Word。
我试过了:
proc.MainModule.FileVersionInfo.ProductName
这非常糟糕,例如Visual Studio的进程名称是denenv,上面的函数返回MicrosoftR Visual StudioR。更不用说它在Word上崩溃了。那么有没有办法从流程名称中获取应用程序名称。
答案 0 :(得分:0)
创建一个wpf应用程序项目,将这些代码添加到MainWindow.cs,并添加一个断点作为指令。(这适用于使用Microsoft Visual Studio IDE.Mine是Visual Studio 2015.)
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
List<Process> ProcList = new List<Process>();
ProcList = Process.GetProcesses().ToList();
}//Add break point here.
}
点击断点后,将鼠标移到&#39; ProcList&#39;。您可以通过单击小三角形按钮来查看它的所有成员。通过重新执行此操作,您可以看到Process类的所有公共成员,并找到您想要的任何内容。
我发现了一些可能有用的属性。
Process.ProcessName
Process.MainModule.FileName
Process.MainModule.FileVersionInfo.FileName
Process.MainModule.FileVersionInfo.InternalName
Process.MainModule.FileVersionInfo.FileDescription
希望它可以提供帮助。