• VLMI - форум по обмену информацией. На форуме можете найти способы заработка, разнообразную информацию по интернет-безопасности, обмен знаниями, курсы/сливы.

    После регистрации будут доступны основные разделы.

    Контент форума создают пользователи, администрация за действия пользователей не несёт ответственности, отказ от ответственности. Так же перед использованием форума необходимо ознакомиться с правилами ресурса. Продолжая использовать ресурс вы соглашаетесь с правилами.
  • Подпишись на наш канал в Telegram для информации о актуальных зеркалах форума: https://t.me/vlmiclub

С# Запрещаем запуск копии программы через Автогенерацию Mutex

Antlion

Участник
Сообщения
12
Реакции
13
0 руб.
Telegram
Создаём класс MutEx и запишем в него данный код ниже:
Код:
using System.Reflection;
using System.Runtime.InteropServices;
using System.Threading;
 
internal static class MutEx
{
    public static bool InstanceCheck
    {
        get
        {
            new Mutex(true, ((GuidAttribute)Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(GuidAttribute), false).GetValue(0)).Value.ToString(), out bool isNew);
            return isNew;
         }
     }
}

И теперь для проверки нам достаточно сделать так:
Код:
// Можно сделать наоборот как хотите ( просто уберите знак ! )
if (!MutEx.InstanceCheck)
{
    // Запущена копия? сейчас закроем...
    File.AppendAllText("AppEx.txt", "Fatal Error on running\r\n");
    Environment.Exit(0);
}
else
{
   // Ваш код.
}
 
Сверху Снизу