C# Как переименовать текущее имя файла после закрытия приложения - PullRequest
0 голосов
/ 26 мая 2020

im coding on c#, я пытаюсь сделать, когда приложение, закрывающее, имя файла будет изменено.

мое базовое имя в приложении меняется каждые 10 тиков в случайных строках таймера, и я хочу его чтобы взять последнюю строку и изменить основное имя на эту строку.

например: приложение закрыто, и последняя строка в приложении - xxx2345, затем измените имя файла на xxx2345.exe

так Я ищу переименовать имя файла после закрытия.

Ответы [ 2 ]

0 голосов
/ 28 мая 2020

Что касается вашего вопроса, вы хотите переименовать текущее имя файла после закрытия приложения.

Вы можете попробовать следующий код, чтобы получить его.

        string str = r.Next(1000).ToString();
        string str1 = Process.GetCurrentProcess().MainModule.ModuleName;     
        Process[] ps = Process.GetProcessesByName(str1);
        if (ps.Length <= 0)
        {
            string filePath = System.Environment.CurrentDirectory; ;            
            string newFileName = filePath + "\\" + str + ".exe";                 
            File.Move(str1, newFileName);
        }

Это мой протестированный результат:

enter image description here

0 голосов
/ 26 мая 2020

Существует разница между после закрытия и * при (while) * закрытии приложения. Я предполагаю, что вы хотите заняться вторым.

Есть несколько вариантов. Один из способов - скопировать exe-файл с новым именем. Затем 1. Удалите старый файл с помощью команды оболочки / windows планировщика (скажем, через 1 минуту в будущем) или 2. при открытии нового файла он удалит старый версия (вам понадобится заданная формула для имен файлов между версиями или реестр / локальное хранилище для предыдущего имени)

...