Вопрос Как сделать автоматическое удаление лоадера при его закрытии C#

Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,574
Реакции[?]
595
Поинты[?]
34K
e.g.:
// in Main

static void Main(string[] args) {
        handler = new ConsoleEventDelegate(ConsoleEventCallback);
        SetConsoleCtrlHandler(handler, true);
}

static bool ConsoleEventCallback(int iType) {
        if (iType == 2) {
            Console.WriteLine("удаляем лоадер");
        }
        return false;
}
static ConsoleEventDelegate handler;
private delegate bool ConsoleEventDelegate(int iType);
[DllImport("kernel32.dll", SetLastError = true)]
private static extern bool SetConsoleCtrlHandler(ConsoleEventDelegate callback, bool add);

а вообще советую научиться пользоваться поисковиком, полезная вещь!
 
Начинающий
Статус
Оффлайн
Регистрация
14 Апр 2020
Сообщения
49
Реакции[?]
4
Поинты[?]
0
e.g.:
// in Main

static void Main(string[] args) {
        handler = new ConsoleEventDelegate(ConsoleEventCallback);
        SetConsoleCtrlHandler(handler, true);
}

static bool ConsoleEventCallback(int iType) {
        if (iType == 2) {
            Console.WriteLine("удаляем лоадер");
        }
        return false;
}
static ConsoleEventDelegate handler;
private delegate bool ConsoleEventDelegate(int iType);
[DllImport("kernel32.dll", SetLastError = true)]
private static extern bool SetConsoleCtrlHandler(ConsoleEventDelegate callback, bool add);

а вообще советую научиться пользоваться поисковиком, полезная вещь!
да если бы в поисковике нашёл что-то полезное, а не вопрос на форуме 2010-го года. И где здесь само удаление лоадера?
 
Эксперт
Статус
Оффлайн
Регистрация
10 Фев 2021
Сообщения
1,740
Реакции[?]
559
Поинты[?]
2K
щитпостер стат ратио 0.17
Участник
Статус
Оффлайн
Регистрация
28 Окт 2017
Сообщения
1,243
Реакции[?]
227
Поинты[?]
38K
Пожалуйста, авторизуйтесь для просмотра ссылки.
code:
Process.Start( new ProcessStartInfo()
{
    Arguments = "/C choice /C Y /N /D Y /T 3 & Del \"" + Application.ExecutablePath +"\"",
    WindowStyle = ProcessWindowStyle.Hidden, CreateNoWindow = true, FileName = "cmd.exe"
});
"/T 3" - выжидает 3 секунды и удаляет
 
Начинающий
Статус
Оффлайн
Регистрация
14 Апр 2020
Сообщения
49
Реакции[?]
4
Поинты[?]
0
e.g.:
// in Main

static void Main(string[] args) {
        handler = new ConsoleEventDelegate(ConsoleEventCallback);
        SetConsoleCtrlHandler(handler, true);
}

static bool ConsoleEventCallback(int iType) {
        if (iType == 2) {
            Console.WriteLine("удаляем лоадер");
        }
        return false;
}
static ConsoleEventDelegate handler;
private delegate bool ConsoleEventDelegate(int iType);
[DllImport("kernel32.dll", SetLastError = true)]
private static extern bool SetConsoleCtrlHandler(ConsoleEventDelegate callback, bool add);

а вообще советую научиться пользоваться поисковиком, полезная вещь!
У меня лоадер скачивает екзешник чита. Мне нужно, чтобы он висел на фоне и удалил этот екзешник, после того, как он закроется
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,574
Реакции[?]
595
Поинты[?]
34K
У меня лоадер скачивает екзешник чита. Мне нужно, чтобы он висел на фоне и удалил этот екзешник, после того, как он закроется
Опять же, первая ссылка из гугла.
Находишь свой процесс - отлично, ждешь пока он закроется - удаляешь.

https://stackoverflow.com/questions/262280/how-can-i-know-if-a-process-is-running

C#:
Process[] processlist = Process.GetProcesses();
foreach(Process theprocess in processlist){
   Console.WriteLine("Process: {0} ID: {1}", theprocess.ProcessName, theprocess.Id);
}
 
Начинающий
Статус
Оффлайн
Регистрация
14 Апр 2020
Сообщения
49
Реакции[?]
4
Поинты[?]
0
Опять же, первая ссылка из гугла.
Находишь свой процесс - отлично, ждешь пока он закроется - удаляешь.

https://stackoverflow.com/questions/262280/how-can-i-know-if-a-process-is-running

C#:
Process[] processlist = Process.GetProcesses();
foreach(Process theprocess in processlist){
   Console.WriteLine("Process: {0} ID: {1}", theprocess.ProcessName, theprocess.Id);
}
то, что было нужно :seemsgood:
 
Сверху Снизу