通过“密钥”识别进程

Posted

技术标签:

【中文标题】通过“密钥”识别进程【英文标题】:Identifying a process via a "key" 【发布时间】:2013-04-19 06:25:55 【问题描述】:

是否可以通过密钥识别进程?

例如,假设服务器进程 1 启动 Chrome Web App 进程 1(Chrome Web 应用程序是它们自己的进程)。现在假设我启动服务器进程 2。我已经可以检测到服务器进程 1 是否正在运行(实际上,由于需要我捕获的共享资源,这会导致异常)。所以我要终止服务器进程 2,除了首先我想检查 Chrome Web 应用程序进程 1 是否仍在运行,因为如果是,我不想打开一个新实例,而是只带上旧实例实例放在前面。

假设我可以将键“com.myuniqueurl”与 Chrome Web 应用程序进程 1 相关联。那么当服务器进程 2 启动时,使用键“com.myuniqueurl”搜索任何进程就很容易了。这可能吗?

部分困难在于除了 Chrome Web App Process 1 之外,正常的 Chrome 实例可能正在运行(来自同一个 .exe 文件)。

【问题讨论】:

使用 Win32 API 这很容易(使用命名事件或命名邮槽)。但我不知道您是否可以使用 Web 应用程序可用的机制来做到这一点。 【参考方案1】:

不幸的是,我认为如果没有讨厌的 hack,例如使用 CreateRemoteThread 从 Chrome 进程中运行某些东西,这是不可能的。

但在您的情况下,您可能能够枚举进程,通过命令行识别 Chrome Web App Process 1 并将其置于最前面。

【讨论】:

以上是关于通过“密钥”识别进程的主要内容,如果未能解决你的问题,请参考以下文章

我可以根据初始密钥和输出哈希识别哈希算法吗?

如何将密钥而不是字符发送到进程?

在 Java 中使用直接输入发送密钥?

Mac通过type-c接口无法识别移动硬盘

通过搜索进程关键字查找 PID

成功识别脚本中的 PID 后,如何终止进程? [复制]