@deadspace12

Как узнать дескриптор запускаемой программы?

Как узнать дескриптор запускаемой программы? По заданию я пытаюсь создать мьютекс и в случае успешной синхронизации он запишет данные в файл. После запуска он ругается на строку открытия мьютекса и пишет, что данный дескриптор не существует помогите плиз с проблемой. Вот сам код, который реализовал я:
static void Main(string[] args)
        {
            IntPtr handle = Process.GetCurrentProcess().MainWindowHandle;
            Console.WriteLine(handle);
            Mutex mut = Mutex.OpenExisting(handle.ToString());
            Random md = new Random();
            for (int i = 0; i < 100000; i++)
            {
                mut.WaitOne();
                StreamWriter sw = new StreamWriter(@"F:\CПО\6лб\ConsoleApp7\1.txt", true);
                int j = md.Next(100000);
                sw.WriteLine(j);
                Console.WriteLine("Записано {0}", j);
                sw.Close();
                mut.ReleaseMutex();
                Thread.Sleep(100);
            }
        }
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
Adler_lug
@Adler_lug
Не сильно знаком с Mutex, но что-то мне подсказывает из первого попавшегося примера, что вам нужно использовать new Mutex(true, handle.ToString()) вместо Mutex.OpenExisting(handle.ToString()).
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы