我想为跨各种进程使用的某些资源创建事件并按名称访问这些事件。问题似乎是所有引用它们的应用程序都必须知道事件的名称。
有没有办法在系统中获取名称事件列表?
我知道我可能会使用一些标准名称,但在未来的可扩展性方面似乎相当不灵活(所有应用程序都需要重新编译)。
恐怕我连ZwOpenDirectoryObject都不能考虑,因为它被描述为需要Windows XP或更高版本,所以它是没有问题的。(还是)感谢你的建议。
我对共享内存有点不确定,因为到目前为止我还没有尝试过。我猜可能会在那个领域做一些阅读。配置文件和注册表是一个小问题,因为由于访问问题,它们在 Vista 中往往会失败。我有点害怕,共享内存也会有同样的问题。
ProcessExplorer 的想法听起来很有希望。有谁知道可用于列出流程事件的 API?而且,它是否可以在没有管理权限的情况下工作?
谢谢你的澄清。
没有真正的主进程。它更像是从不同进程使用的驱动程序 dll,事件将用于“锁定”这些进程使用的资源。
我正在考虑建立一个中央服务,即使在 Vista 下也有足够的访问权限。这肯定会使事情复杂化,但它可能是唯一面临安全问题的事情。