Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 31.08.2021
Сообщений: 53

Найти файл в системе и скопировать его в папку автозагрузки

08.04.2022, 19:08. Показов 594. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно найти файл "poop123.txt", а затем положить его по пути "%userprofile%\\AppData\\Roaming\\Micros oft\\Windows\\Start Menu\\Programs\\Startup"
Пробую так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
            string fileLocation;
            string catalog = "%userprofile%";
            string fileName = "poop123.txt";
            string newPath = catalog + "\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup";   
            
            foreach (string findedFile in Directory.EnumerateFiles(catalog, fileName,
                SearchOption.AllDirectories))
            {
                try
                {
                    FileInfo fileInf = new FileInfo(findedFile);
                    fileInf.CopyTo(newPath, true);      
                }
                catch 
                {
                    
                }
 
            }
но программа ищет в каталоге, куда собирается решение из Visual Studio, и выходит ошибка "System.IO.DirectoryNotFoundExceptio n: "Could not find a part of the path 'D:\visstudio\Bebra2\Bebra2\bin\Debug\ne t5.0-windows\%userprofile%'."
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.04.2022, 19:08
Ответы с готовыми решениями:

В сетевой папке найти самый последний созданный EXE-файл и скопировать его в локальную папку
Здравствуйте, подскажите как можно реализовать такое, есть сетевая папка в которой есть другие папки, нужно найти самый последний созданный...

Скопировать файл в другую папку и переименовать его
В папке с нашей программой есть 2 dll файла TemplateXP.dll и TemplateW.dll. Одну из них нужно скопировать в папку data и переименовать в...

Найти файл, и в папку где лежит этот файл скопировать другой файл)
Задача описана в названии, но повторюсь. Надо найти папку с известным названием файла (123.txt), после того как этот файл найден, в папку...

5
 Аватар для iLinks
800 / 458 / 237
Регистрация: 03.01.2017
Сообщений: 1,339
08.04.2022, 19:35
Так вам нужно в цикле задать каталог, с которого начинаете поиск, а вы конечный
Цитата Сообщение от Romay13 Посмотреть сообщение
string catalog = "%userprofile%";
Это замените на
C#
1
string catalog = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
1
0 / 0 / 0
Регистрация: 31.08.2021
Сообщений: 53
08.04.2022, 19:53  [ТС]
Цитата Сообщение от iLinks Посмотреть сообщение
string catalog = Environment.GetFolderPath(Environment.Sp ecialFolder.UserProfile);
Теперь ошибка Access Denied у AppData. Можно как-то это переделать, чтобы искало не в %userprofile%, а в Desktop?
Я поменял на
C#
1
string catalog = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
и сделал
C#
1
string newPath = "%userprofile" + "\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup";
Но файл не копируется в Startup, потому что тоже пытается скопировать в папку с проектом и далее по пути "%userprofile%\\AppData\\Roaming\\Micros oft\\Windows\\St art Menu\\Programs\\Startup"

Добавлено через 10 минут
А если
C#
1
fileInf.CopyTo(newPath, true);
поменять на
C#
1
fileInf.CopyTo(Environment.GetFolderPath(Environment.SpecialFolder.Startup), true);
, то ругается, что "%userprofile%\\AppData\\Roaming\\Micros oft\\Windows\\Start Menu\\Programs\\Startup" это директория, а не файл и туда нельзя скопировать (странная ошибка)
0
 Аватар для iLinks
800 / 458 / 237
Регистрация: 03.01.2017
Сообщений: 1,339
09.04.2022, 12:22
Просто нет доступа к каталогу APPDATA
Добавьте файл манифеста в проект
Измените элемент <requestedExecutionLevel> на:
XML
1
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
Цитата Сообщение от Romay13 Посмотреть сообщение
это директория, а не файл
А это исправится добавлением "\" в конец
C#
1
string newPath = catalog + "\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\"
1
0 / 0 / 0
Регистрация: 31.08.2021
Сообщений: 53
09.04.2022, 13:00  [ТС]
Цитата Сообщение от iLinks Посмотреть сообщение
string newPath = catalog + "\\AppData\\Roaming\\Microsoft\\Windows\ \Start Menu\\Programs\\Startup\"
Добавил \\ в конец, теперь пишет, что директория не найдена (Couldnt find a part of the path)
Попробовал
C#
1
Environment.GetFolderPath(Environment.SpecialFolder.Startup) + "\\"
Та же ошибка
0
0 / 0 / 0
Регистрация: 31.08.2021
Сообщений: 53
09.04.2022, 19:58  [ТС]
Решено -
C#
1
fileInf.CopyTo(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\poop123.txt", true);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.04.2022, 19:58
Помогаю со студенческими работами здесь

Найти файл и скопировать в папку
Привет всем, Помогите с кодом, который ищет все файлы на диске 'С: ' с расширением '*.prn' и копирует их в папку 'С:Temp' Спасибо

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

Как найти файл в определенной папке и скопировать в другую папку?
Появилась необходимость искать нужный файл в папке и копировать его в другую папку. Есть вот такой код, но тут папка копируется...

Разобрать построчно текстовый файл, найти файлы по маске , скопировать в определенную папку
Друзья, доброго дня. Помогите пожалуйста старому дядьке с решением задачки: Дано: а) текстовый файл с артикулами &quot;lam.txt&quot;...

Найти в системе указанный файл и запустить его
Здравствуйте, в очередной раз нужна помощь. Задача такова: найти в системе указанный файл (например, test.exe) и запустить его. Файл может...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru