Pergunta
Temos vários aplicativos MFC, que usam CMutex (false, "blah"), onde "blah" permite que o mutex ao trabalho em limites de processo.
Um desses aplicativos foi re-escrito sem MFC (usando Qt vez). Como posso simular o CMutex usando chamadas Win32? (QMutex do Qt não é inter-processo.) Eu prefiro não modificar os aplicativos MFC.
Solução
Para mutexes inter-processo que você deseja essas chamadas:
Estas são as chamadas de API Win32 subjacentes que CMutex é um invólucro em torno.
Por dentro do processo apenas semáforos você também pode usar estas chamadas, que são mais rápidos:
Outras dicas
Os seguintes funcs provavelmente será o que você quer, todos eles são documentados no MSDN.
CreateMutex(...)
WaitForSingleObject(...)
ReleaseMutex(...)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow