vlarol
08-08-2014, 08:56
Приветствую!
Существует приложение (с исполняемым файлом что-то вроде app.exe), однако можно запустить лишь один экземпляр приложения. После немногочисленных попыток определить "виновника" выяснилось, что приложение создает и захватывает мьютекс (назовем его mutant) и если "прибить" mutant, то возможен запуск второго экземпляра приложения. Вопросы следующий: Есть ли элегантный способ обхода этого мьютекса (без закрытия его по хэндлу, без патча памяти процесса и т.д.)?
Желательно привести алгоритм для случая, когда app.exe еще не запущен и нужно его "отловить", при этом нежелательно использовать функции вида zw*.
Благодарю заранее
Существует приложение (с исполняемым файлом что-то вроде app.exe), однако можно запустить лишь один экземпляр приложения. После немногочисленных попыток определить "виновника" выяснилось, что приложение создает и захватывает мьютекс (назовем его mutant) и если "прибить" mutant, то возможен запуск второго экземпляра приложения. Вопросы следующий: Есть ли элегантный способ обхода этого мьютекса (без закрытия его по хэндлу, без патча памяти процесса и т.д.)?
Желательно привести алгоритм для случая, когда app.exe еще не запущен и нужно его "отловить", при этом нежелательно использовать функции вида zw*.
Благодарю заранее