Я пытаюсь выполнить следующее из приложения, которое я разрабатываю.Выполнение списка команд из командной строки из моего приложения VB.NET
При нажатии кнопки папка создается в определенном месте (установка в графическом интерфейсе). Мне нужна эта папка для скрытия, так что даже если пользователь нажмет кнопку «Просмотреть скрытые элементы», они не будут уметь видеть эту папку. Я пробовал это сделать:
Dim di As DirectoryInfo
di = Directory.CreateDirectory(path) 'path is a variable with the location
di.Attributes = FileAttributes.System
di.Attributes = FileAttributes.Hidden
Это, однако, не работает. В качестве альтернативы, я создал папку с помощью приложения и выполняется следующий код в CMD строке:
attrib +s +h D:\Documents\FolderName
Это работает, то он скрывает папку, даже если просматривать скрытые элементы проверяется.
Что я хочу знать, как я могу открыть подсказку cmd из моего приложения, ради аргумента, когда нажата кнопка создания папки, и выполните этот код в командной строке? Я попытался с помощью
process.start("cmd.exe", "attrib +s +h D:\Documents\FolderName")
, но это не работает. Он просто открывает приглашение cmd с каталогом, установленным как папка для отладки приложений.
Мой вопрос в том, как я могу выполнить свои операторы командной строки из своего приложения VB.NET и после выполнения операторов закрыть приглашение cmd? Я подумал о добавлении нового проекта «Консольное приложение» в мое решение, но у меня нет опыта работы с ним.
Любая помощь была бы принята с благодарностью.
Спасибо.
Вы назначаете два раза атрибуты, сначала присваиваете системный атрибут, а затем вы заменяете системный атрибут на скрытый атрибут. Имейте в виду, что свойство заменяет существующие атрибуты, а не добавляет или удаляет, поэтому используйте его надлежащим образом. – ElektroStudios
Кроме того, CMD ожидает переключатель (/ C |/K), чтобы указать аргументы команды. – ElektroStudios