c# - 获取进程互斥列表

标签 c# .net list process mutex

我得到了进程 ID 列表,我想列出该进程拥有的所有互斥锁。

我正在尝试在 C# 中执行此操作,但我找不到一种方法来执行此操作。

到目前为止我得到了:

foreach(Process thisProcess in processlist)
{
    Console.WriteLine("{0} {1}", thisProcess.ProcessName, thisProcess.Id);
}

这将列出所有进程 ID,但需要它们拥有的互斥体。

我读过一些有关使用 NTDLL.dll 的内容,但现在不知道如何使用。

最佳答案

枚举互斥体是“内核对象”常规工作的一部分。正在阅读the book- "Windows Internals"在深入研究此类代码之前是个好主意。

这是一个链接,给出 some info关于enumerate kernel object

use ZwQuerySystemInformation with SystemHandleInformation, ZwDuplicateObject, ZwQueryObject with ObjectNameInformation.

关于c# - 获取进程互斥列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11268047/

相关文章:

c# - Firefox 忽略 Response.ContentType

c# - MVC3中的Page和ViewBag动态对象有什么区别?

c# - 检查测试结束时是否还有任何线程残留

c# - 使用 EPPLUS 从列表导出到 Excel

java - Java中列表的增量过滤

python - 给定 2 个整数列表如何找到不重叠的范围?

c# - 如何在没有货币格式的情况下将字符串解析为 float ?

C# - 使用 SSL 保护 `sockets`

通过代码隐藏的 C# 数据绑定(bind)不适用于 TextBox 中的 Text 属性

python - 动态语言中依赖注入(inject)的真实示例是什么?