Я пытаюсь ограничить использование приложением нескольких экземпляров на уровне компьютера, т. Е. На компьютер будет входить несколько пользователей, и это приложение должно иметь только один экземпляр по соображениям производительности. Поэтому, если пользователь A запускает приложение, пользователь B должен просто получить сообщение о том, что это приложение уже запущено в учетной записи пользователя A. Теперь, прежде чем начать изучать процессы, я уже попробовал это, и это не работает, потому что для того, чтобы мое приложение проверяло, запущен ли аналогичный процесс, необходимо запустить процесс (приложение), в данном случае приложение. никогда не начнется.
Я использую это для ограничения нескольких экземпляров, и это прекрасно работает, но работает только на уровне пользователя.
Microsoft.VisualBasic.ApplicationServices
public class SingleInstanceApplication : WindowsFormsApplicationBase
{
private SingleInstanceApplication()
{
base.IsSingleInstance = true;
}
public static void Run(Form f, StartupNextInstanceEventHandler startupHandler)
{
SingleInstanceApplication app = new SingleInstanceApplication();
app.MainForm = f;
app.StartupNextInstance += startupHandler;
app.Run(Environment.GetCommandLineArgs());
}
}
Любая помощь или совет будет высоко ценится ...