使用System.Diagnostics.Process()启动进程时,如何设置进程的Image Name和Description?
以便它以所需的名称和描述出现在 Windows 任务管理器中。
例如,目前我正在调用一些控制台应用程序,如下所示:
static void Main(string[] args)
{
int incVal = 0;
Process[] process = null;
try
{
process = new Process[Properties.Settings.Default.TargetLayers.Length];
for (incVal = 0; incVal < Properties.Settings.Default.TargetLayers.Split(',').Length; incVal++)
{
process[incVal] = new Process();
process[incVal].StartInfo.FileName = "PMSchedulerTask.exe";
process[incVal].StartInfo.Arguments = "\"" + Properties.Settings.Default.TargetLayers.Split(',')[incVal] + "$" + Properties.Settings.Default.TableMVRelation.Split('|')[incVal] + "\"";
process[incVal].Start();
}
for (incVal = 0; incVal < Properties.Settings.Default.TargetLayers.Split(',').Length; incVal++)
{
process[incVal].WaitForExit();
}
}
catch (Exception ex)
{
throw ex;
}
}
现在我想让每个进程在任务管理器中显示不同的图像名称和描述。
最佳答案
这些名称是由任务管理器从进程启动的可执行镜像中提取的。没有设置可以覆盖它。 Windows 甚至不知道这些字符串的存在。它们只是用于启动进程的可执行文件的 PE 结构的一部分。
如果您真的需要这样做,您可以创建一个包装器可执行文件。
关于c# - 使用 System.Diagnostics.Process() 为进程设置图像名称和描述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24509201/