Win32: Как получить процесс/поток, который владеет взаимным исключением?

Я работаю, приложение которого только один экземпляр должен существовать в любой момент времени. Существует несколько возможностей выполнить это:

  • Проверьте рабочие процессы на одно соответствие (ненадежному) имени нашего EXE
  • Найдите главное окно (ненадежный, и у меня не всегда есть главное окно),
  • Создайте взаимное исключение с уникальным именем (GUID)

Взаимоисключающая опция кажется мне самым надежным и изящным.

Однако, прежде чем мой второй экземпляр завершается, я хочу добавить сообщение к уже рабочему экземпляру. Для этого мне нужен дескриптор к потоку (или процесс), который владеет взаимным исключением.

Однако, кажется, нет никакой API-функции для получения создателя/владельца данного взаимного исключения. Я просто пропускаю его? Там другой путь состоит в том, чтобы добраться до этого потока/процесса? Там другой путь состоит в том, чтобы пойти об этом?

Обновление: Этот парень просто широковещательно передал сообщение ко всем рабочим процессам. Я предполагаю, что это возможно, но мне действительно не нравится он...

7
задан Thomas 22 December 2009 в 16:08
поделиться

0 ответов

Другие вопросы по тегам:

Похожие вопросы: