Удалить файлы не прописывая полного пути
Цитата: En32 от 07.11.2022, 22:39Всем привет, мне нужно удалить из C:\Windows\System32 из папок с языком таких как [spoiler title="Эти"]ar-SA bg-BG cs-CZ da-DK de-DE el-GR en-GB en-US es-ES es-MX et-EE fi-FI fr-CA fr-FR he-IL hr-HR hu-HU it-IT ja-JP ko-KR lt-LT lv-LV nb-NO nl-NL pl-PL pt-BR pt-PT ro-RO ru-RU sk-SK sl-SI sr-Latn-CS sr-Latn-RS sv-SE th-TH tr-TR uk-UA zh-CN zh-HK zh-TW[/spoiler] файл cmd.exe.mui.
На cmd это легко реализовать, но как на C#?
for %%l in (ar-SA bg-BG cs-CZ da-DK de-DE el-GR en-GB en-US es-ES es-MX et-EE fi-FI fr-CA fr-FR he-IL hr-HR hu-HU it-IT ja-JP ko-KR lt-LT lv-LV nb-NO nl-NL pl-PL pt-BR pt-PT ro-RO ru-RU sk-SK sl-SI sr-Latn-CS sr-Latn-RS sv-SE th-TH tr-TR uk-UA zh-CN zh-HK zh-TW) do ( if exist "%systemroot%\System32\%%l\cmd.exe.mui" ( del /q "%systemroot%\System32\%%l\cmd.exe.mui" >nul 2>&1 ) )
Всем привет, мне нужно удалить из C:\Windows\System32 из папок с языком таких как
На cmd это легко реализовать, но как на C#?
for %%l in (ar-SA bg-BG cs-CZ da-DK de-DE el-GR en-GB en-US es-ES es-MX et-EE fi-FI fr-CA fr-FR he-IL hr-HR hu-HU it-IT ja-JP ko-KR lt-LT lv-LV nb-NO nl-NL pl-PL pt-BR pt-PT ro-RO ru-RU sk-SK sl-SI sr-Latn-CS sr-Latn-RS sv-SE th-TH tr-TR uk-UA zh-CN zh-HK zh-TW) do (
if exist "%systemroot%\System32\%%l\cmd.exe.mui" (
del /q "%systemroot%\System32\%%l\cmd.exe.mui" >nul 2>&1
)
)
Цитата: Adler от 07.11.2022, 23:02Приветствую
На вскидку как-то так:new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exists(file)) File.Delete(file); });P.S. Писал прямо в комментарии, так что возможны ошибки.
Приветствую
На вскидку как-то так:
new List <string> () {
"ar-SA",
"bg-BG",
"cs-CZ"
/* и т.д.*/
}.ForEach(x =>
{
var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui";
if (File.Exists(file)) File.Delete(file);
});
P.S. Писал прямо в комментарии, так что возможны ошибки.
Цитата: En32 от 07.11.2022, 23:32Цитата: Adler от 07.11.2022, 23:02Приветствую
На вскидку как-то так:new List <string> () {"ar-SA","bg-BG","cs-CZ"/* и т.д.*/}.ForEach(x =>{var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui";if (File.Exist(file)) File.Delete(file);});new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exist(file)) File.Delete(file); });new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exist(file)) File.Delete(file); });P.S. Писал прямо в комментарии, так что возможны ошибки.
Привет, вроде проверил, и чот не удаляется, с правами админа запускал, даже права на файл получены
Цитата: Adler от 07.11.2022, 23:02Приветствую
На вскидку как-то так:new List <string> () {"ar-SA","bg-BG","cs-CZ"/* и т.д.*/}.ForEach(x =>{var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui";if (File.Exist(file)) File.Delete(file);});new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exist(file)) File.Delete(file); });new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exist(file)) File.Delete(file); });P.S. Писал прямо в комментарии, так что возможны ошибки.
Привет, вроде проверил, и чот не удаляется, с правами админа запускал, даже права на файл получены
Цитата: En32 от 09.11.2022, 15:30Цитата: Adler от 07.11.2022, 23:02Приветствую
На вскидку как-то так:new List <string> () {"ar-SA","bg-BG","cs-CZ"/* и т.д.*/}.ForEach(x =>{var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui";if (File.Exists(file)) File.Delete(file);});new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exists(file)) File.Delete(file); });new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exists(file)) File.Delete(file); });P.S. Писал прямо в комментарии, так что возможны ошибки.
Добрый день, у меня всё удаляется, но, только если скопировать папки на другой диск, хотя скорее всего значение Environment.SystemDirectory, не хочет отображать папку %systemroot%\System32
Цитата: Adler от 07.11.2022, 23:02Приветствую
На вскидку как-то так:new List <string> () {"ar-SA","bg-BG","cs-CZ"/* и т.д.*/}.ForEach(x =>{var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui";if (File.Exists(file)) File.Delete(file);});new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exists(file)) File.Delete(file); });new List <string> () { "ar-SA", "bg-BG", "cs-CZ" /* и т.д.*/ }.ForEach(x => { var file = $"{Environment.SystemDirectory}\\{x}\\cmd.exe.mui"; if (File.Exists(file)) File.Delete(file); });P.S. Писал прямо в комментарии, так что возможны ошибки.
Добрый день, у меня всё удаляется, но, только если скопировать папки на другой диск, хотя скорее всего значение Environment.SystemDirectory, не хочет отображать папку %systemroot%\System32
Цитата: Adler от 09.11.2022, 19:01Попробуйте
Environment.GetFolderPath(Environment.SpecialFolder.System)вместоEnvironment.SystemDirectory
Попробуйте СкопированоEnvironment.GetFolderPath(Environment.SpecialFolder.System) вместо СкопированоEnvironment.SystemDirectory
Цитата: En32 от 09.11.2022, 21:39Цитата: Adler от 09.11.2022, 19:01Попробуйте
Environment.GetFolderPath(Environment.SpecialFolder.System)вместоEnvironment.SystemDirectoryПриветик, опять не работает вот весь ваш код, он так должен выглядеть?
[spoiler title="Ваш код"]
new List<string>() {
"ru-RU",
"en-US"
/* и т.д.*/
}.ForEach(x =>
{
var file = "Environment.GetFolderPath(Environment.SpecialFolder.System)\\{x}\\cmda.exe.mui";
if (File.Exists(file)) File.Delete(file);
});
[/spoiler]Ещё вопрос, есть команда, она создаёт папку 122 в HKEY_LOCAL_MACHINE\SOFTWARE
[spoiler title="Команда"]Registry.LocalMachine.CreateSubKey(@"SOFTWARE\122");[/spoiler]
Но место этого она создаёт папку в HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node
Цитата: Adler от 09.11.2022, 19:01Попробуйте
СкопированоEnvironment.GetFolderPath(Environment.SpecialFolder.System)вместоСкопированоEnvironment.SystemDirectory
Приветик, опять не работает вот весь ваш код, он так должен выглядеть?
new List<string>() {
"ru-RU",
"en-US"
/* и т.д.*/
}.ForEach(x =>
{
var file = "Environment.GetFolderPath(Environment.SpecialFolder.System)\\{x}\\cmda.exe.mui";
if (File.Exists(file)) File.Delete(file);
});
Ещё вопрос, есть команда, она создаёт папку 122 в HKEY_LOCAL_MACHINE\SOFTWARE
Но место этого она создаёт папку в HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node
Цитата: Сергей от 09.11.2022, 21:42En32, приветствую 🖐
Снимите галочку тут:
Проект ➜ Свойства ➜ Скриншот.
Чтобы быстрее начать вникать в C#, рекомендую начать просмотр курса по С#.
Спустя пару часов, такие задачи, которые Вы ставите в начале темы, будут для Вас раз плюнуть 💪
En32, приветствую 🖐
Снимите галочку тут:
Проект ➜ Свойства ➜ Скриншот.
Чтобы быстрее начать вникать в C#, рекомендую начать просмотр курса по С#.
Спустя пару часов, такие задачи, которые Вы ставите в начале темы, будут для Вас раз плюнуть 💪