Метод для .DLL для представления состояния всей системы (Windows) - PullRequest
1 голос
/ 14 марта 2012

Я создаю два независимых файла C ++ .dll, которые оба взаимодействуют с одним и тем же оборудованием.Если оба подключены одновременно, их команды будут перепутаны, а оборудование будет работать неправильно.Поэтому я должен убедиться, что только один подключен к оборудованию одновременно (даже если обе DLL загружены и работают).

Вот моя идея на данный момент:

  • перед подключением, DLL создает файл в известном месте
  • при подключении DLL, ищет файл другой DLL и отказывается подключаться, если он присутствует.
  • после отключения DLL удаляетего файл.

Это кажется достаточно простым, но мне интересно, есть ли лучший способ?Какой-то общесистемной переменной, которую могут определить библиотеки DLL?Простота является ключевым моментом - чем меньше строк кода, тем лучше.

Ответы [ 2 ]

1 голос
/ 14 марта 2012

Используйте функцию CreateMutex

0 голосов
/ 14 марта 2012

Для этого вы можете использовать объект глобального мьютекса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...