Как не допустить запуск второй копии программы. Вариант 7
У меня есть элементарный вариант, проще не бывает. Предлагаемый мной модуль только определяет запущена программа или нет. Я не стал усложнять этот модуль автоматическим изменением имени семафора на случай если две программы захотят использовать этот модуль одновременно. Имея самые скромные навыки в программировании можно придумать семафору своё уникальное имя и переписать его в previnst.pas вовсе не обязательно семафор называть AbraShvabra.
Использование:
В модуле program в части Uses нужно добавить previnst и вы получаете переменную ммм: boolean которая true если копия программы уже запущена.
Пример:
program Project1;
uses
{$R *.RES}
begin
if mmm then begin
//Тело программы прогры
содержание модуля previnst.pas
unit Previnst;
interface
uses Windows;
var mmm:boolean; //эта переменная если true то программа уже запущена
implementation
var
