Создайте файл и оставьте его открытым с эксклюзивной блокировкой (то есть не передавайте FILE_SHARE_READ
и т. Д.).Когда запускается второй экземпляр, он пытается открыть файл, и если он не работает, это означает, что первый все еще работает.
Если первый сбой, то Windows автоматически закроет все дескрипторы файлов, и поэтому второй процесс будетдавайте посмотрим, что файл есть, но, поскольку он может открыть его, он знает, что первый сбой (эта техника также может быть использована для специального диалога: «Я вижу, что предыдущий экземпляр этого приложения дает сбой, вы хотите восстановитьВаш последний сеанс? "или что-то)