• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Single Instance Application

  • Автор темы Автор темы NikSoft
  • Дата начала Дата начала
N

NikSoft

Следующий код решает задачу

Код:
using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace Singleton
{
static class Program
{
const int showMinimized = 2;
const int showRestore  = 9;

[DllImport("User32.dll")]
public static extern int ShowWindowAsync(IntPtr hWnd, int swCommand);

[STAThread]
static void Main()
{
Process[] numberOfProcesses = Process.GetProcessesByName("Singleton");

if (numberOfProcesses.Length == 1)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
else
{
ShowWindowAsync(numberOfProcesses[0].MainWindowHandle, showMinimized);
ShowWindowAsync(numberOfProcesses[0].MainWindowHandle, showRestore);
}
}
}
}

Здесь "Singleton" имя приложения
 
Уважаемый NikSoft большое спасибо, за код.
буду должен
Я сделал так :
Код:
using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace WinData
{
static class Program
{
/// </summary>
[STAThread]
static void Main()
{
//процесс -> namespace
Process[] numberOfProcesses = Process.GetProcessesByName("WinData");
if (numberOfProcesses.Length <= 1)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
}
В принципе работает. Спасибо!
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab