c# - 有没有办法从另一个进程“GetCommandLineArgs”?
问题描述
我只是想用不同的参数启动和终止同一个程序的多个实例。启动不是问题,但我怎样才能终止具有特定参数的进程?
static void Start(string args)
{
var process = new Process
{
StartInfo = { FileName = "FileName", Arguments = args }
};
process.Start();
}
这是我用 args 启动 procs 的方法。
我试图以某种方式保留它,但我没有成功。我已经在 Google 上搜索了过去一小时,但没有得到任何有用的结果。
解决方案
使用 aDictionary<string, Process>
存储进程和参数:
static Dictionary<string, Process> processes = new Dictionary<string, Process>();
static void StartProcess(string args)
{
var process = new Process
{
StartInfo = { FileName = "FileName", Arguments = args }
};
process.Start();
processes.Add(args, process);
}
static void StopProcess(string args)
{
var process = processes[args];
process.Kill();
process.Dispose();
processes.Remove(args);
}
推荐阅读
- javascript - AXIOS VueJs 在 v-for 中传递响应参数
- android - Flutter:构建 APK 时如何传递 Gradle 参数?
- python - NumPy 数组中相同行的索引
- matlab - (应用程序设计器)使用 matlab.ui.control.EditField/set.Value 时出错(第 96 行)“值”必须是字符向量
- c# - 什么是迭代嵌套对象集合的更清洁或更有效的方法
- android - 如何添加按钮并将其覆盖在我的 Google 地图片段上
- c# - 使用接口类型定义的属性从动态映射到类型
- anaconda - 在 Windows 上安装 RStudio 的 anaconda 提示管理员
- c++ - 使用构造函数更改向量类型?
- bazel - 在 Windows 上使用 Bazel 0.21 构建 angular-bazel-example 的权限被拒绝