Видимо, разработчики что-то поменяли в библиотеке.
Она немного глючит (не нашёл компонента при установке пакета, ну и при сборке одной демки ругается на отсутствие компилятора ), но зато теперь вопрос запуска приложения только в одном экземпляре решается элементарно:
- Код: Выделить всё
program windemo;
uses
uniqueinstanceraw;
{$R *.res}
begin
if not InstanceRunning('любое_слово') then
begin
Application.Initialize;
Application.CreateForm(TMain, Main);
Application.CreateForm(TMsg1, Msg1);
Application.Run;
end;
Ранее иногда возникала такая задача, обычно я это не реализовывал либо из-за сложности реализации, либо (чаще) из-за отсутствия кроссплатформенности.
P. S. Хотя проверил пока только на Windows, но, думаю, на Linux тоже должно быть всё нормально.