Сделать окно текущего приложения активным
Цитата: Удаленный пользователь от 22.07.2022, 02:16Всем привет👋
Сделал в своё приложение обновление по кнопке, но после запуска уже обновлённого приложения его нету на панели задач + оно не на переднем плане а на самом заднем, что бы оно там появилось нужно нажать по приложению но этот вариант меня не устраивает, кто как это исправляет? Поделитесь пожалуйста.
Всем привет👋
Сделал в своё приложение обновление по кнопке, но после запуска уже обновлённого приложения его нету на панели задач + оно не на переднем плане а на самом заднем, что бы оно там появилось нужно нажать по приложению но этот вариант меня не устраивает, кто как это исправляет? Поделитесь пожалуйста.
Цитата: Удаленный пользователь от 24.07.2022, 17:10Приветствую. Лучше уточнить от том, что происходит с основным окном, что имеется ввиду, когда говорится об обновлении. Если от этого абстрагироваться, то из стандартных свойств окна ( this.TopMost = true;) отвечает за передний план(к сожалению не всегда как хотелось бы). Что касается отсутствия на панели задач, при стандартном поведении, там отсутствуют диалоговые окна.
Приветствую. Лучше уточнить от том, что происходит с основным окном, что имеется ввиду, когда говорится об обновлении. Если от этого абстрагироваться, то из стандартных свойств окна ( this.TopMost = true;) отвечает за передний план(к сожалению не всегда как хотелось бы). Что касается отсутствия на панели задач, при стандартном поведении, там отсутствуют диалоговые окна.
Цитата: Удаленный пользователь от 26.07.2022, 14:28Цитата: Viktor от 24.07.2022, 17:10Приветствую. Лучше уточнить от том, что происходит с основным окном, что имеется ввиду, когда говорится об обновлении. Если от этого абстрагироваться, то из стандартных свойств окна ( this.TopMost = true;) отвечает за передний план(к сожалению не всегда как хотелось бы). Что касается отсутствия на панели задач, при стандартном поведении, там отсутствуют диалоговые окна.
Привет👋
Скачивается обновлённое приложение, через cmd завершаю текущее, удаляю его, переименовываю скачанное в нормальное название, запускаю. При таком сценарии приложения нету на панели задач пока по его окну не кликнешь мышкой, даже если при этом стоит TopMost = true, в этом и есть проблема. Искал в интернете способы но так и ничего путного не нашёл.
Цитата: Viktor от 24.07.2022, 17:10Приветствую. Лучше уточнить от том, что происходит с основным окном, что имеется ввиду, когда говорится об обновлении. Если от этого абстрагироваться, то из стандартных свойств окна ( this.TopMost = true;) отвечает за передний план(к сожалению не всегда как хотелось бы). Что касается отсутствия на панели задач, при стандартном поведении, там отсутствуют диалоговые окна.
Привет👋
Скачивается обновлённое приложение, через cmd завершаю текущее, удаляю его, переименовываю скачанное в нормальное название, запускаю. При таком сценарии приложения нету на панели задач пока по его окну не кликнешь мышкой, даже если при этом стоит TopMost = true, в этом и есть проблема. Искал в интернете способы но так и ничего путного не нашёл.
Цитата: Удаленный пользователь от 26.07.2022, 21:05Привет. Я из любопытства хотел бы понять твой алгоритм. Скачать новую версию можно самому приложению. Это понятно, а после скачивания этап с cmd, очисткой им занимается какой то оделенный процесс? Если да, то как он потом стартует его?
Привет. Я из любопытства хотел бы понять твой алгоритм. Скачать новую версию можно самому приложению. Это понятно, а после скачивания этап с cmd, очисткой им занимается какой то оделенный процесс? Если да, то как он потом стартует его?
Цитата: Удаленный пользователь от 26.07.2022, 22:09Цитата: Viktor от 26.07.2022, 21:05Привет. Я из любопытства хотел бы понять твой алгоритм. Скачать новую версию можно самому приложению. Это понятно, а после скачивания этап с cmd, очисткой им занимается какой то оделенный процесс? Если да, то как он потом стартует его?
Скачивается новая версия рядом с приложением, потом просто вызываю метод cmd:
Cmd("taskkill /f /im \"имя приложения.exe\" && " + "timeout /t 1 && " + "del \"имя приложения.exe\" && " + "ren dwnloaded.exe \"имя приложения.exe\" && " + "\"имя приложения.exe\"");После чего на панели задач нету самой программы пока по ней не кликнешь.
Цитата: Viktor от 26.07.2022, 21:05Привет. Я из любопытства хотел бы понять твой алгоритм. Скачать новую версию можно самому приложению. Это понятно, а после скачивания этап с cmd, очисткой им занимается какой то оделенный процесс? Если да, то как он потом стартует его?
Скачивается новая версия рядом с приложением, потом просто вызываю метод cmd:
Cmd("taskkill /f /im \"имя приложения.exe\" && " +
"timeout /t 1 && " +
"del \"имя приложения.exe\" && " +
"ren dwnloaded.exe \"имя приложения.exe\" && " +
"\"имя приложения.exe\"");
После чего на панели задач нету самой программы пока по ней не кликнешь.