Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Windows > Команды для работы с файлами


Автор: Acid 25.8.2006, 19:43
Заранее извиняюсь, еси эт не по вб, не особо знаком...

так вот, может кто подскажет команды для написания .bat/.dat файлов, ну, что-то типа "создать папку, файл, переименовать и тд"



Ps. и еще, вот знаю, что адресс C:\WIndows записывается как %systemroot%, а вот хотелосб бы узнать, как обозначается, например, активный рабочий стол, либо диск, на котором стоит ос... или хотя бы, как сиё прописывать в вб?  smile 

Автор: bom 26.8.2006, 04:03
1.
Центр справки и поддержки (F1) -> Найти: "cmd"

2.
Код

Dim EnvString As String, i As Integer
i = 1
Do
  EnvString = Environ(i)
Debug.Print EnvString
  i = i + 1
Loop Until Len(EnvString) = 0
End Sub

Автор: Тутанхамец 26.8.2006, 09:23
А еще посмотри в хэлпе: "WshShell Object". Там есть такое SpecialFolders. Может пригодиться, если решишь с батников перейти на VBS или JS-сценарии. Они иногда удобнее.

Автор: JusTalionis 28.8.2006, 16:43
Рискну заслужить плевки в свой адрес, но я пока поступаю по старинке:

Код

  intFileNum = FreeFile                                                          'получить свободный файловый номер
  Open "demo.bat" For Output As intFileNum                       'открываем файл
  Print #intFileNum, "echo Демонстрационный файл"       'записываем команду(ы)
  Close intFileNum                                                                  'закрываем файл.


Если кто считает, что это плохо, объясните мне, плиззз, чем именно?

NAME "стар_имя" AS "нов_имя"   - переименование файла
KILL "файл"   - удалить файл с диска
MKDIR "имя" - создать каталог
RMDIR "имя" - удалить пустой каталог
CHDIR "имя" - перейти в каталог
ChDrive "буква_диска" - сменить диск
CurDir$  - текущий каталог
App.Path - путь к каталогу программы


Еще, в VB есть одна ОЧЕНЬ полезная функция: Environ. Она возвращает имена и содержание всех переменных среды операционной системы. Например, чтобы получить директорию Windows, совсем не надо прибегать к API-функции GetWindowsDirectory, а получить её можно так: 

ABC = Environ ("windir") 

Также можно получить, например, следующие перменные: 

ABC = Environ ("TEMP") 'директория временных файлов 
ABC = Environ ("BLASTER") 'координаты звуковой карты (если есть)
ABC = Environ ("PATH") 'пути, объявленные в autoexec.bat 

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

Автор: Тутанхамец 28.8.2006, 20:13
Цитата

Если кто считает, что это плохо, объясните мне, плиззз, чем именно?


Я не считаю, что это плохо, просто в некоторых случаях скрипты vbs или js удобнее, чем батники. Возможно, случай Acid'а из этих, это уж он сам решит. Я просто на всякий случай сказал - вдруг он не знает, что есть альтернатива. smile 

Имхо, удобства скриптов:

1) При запуске скрипта не возникает черное окно консоли. Всё делается незаметно для пользователя.

2) Работа с FSO - в нём есть всё для работы с файлами и папками. Есть еще WshShell - через него удобно работать с реестром. И вообще можно юзать кучу разных активИксов.



Автор: Acid 29.8.2006, 17:52
спасибо, оч помогли... ток вот все еще не понял, есть ли название для активного рабочего стола? через % или как-нить еще

Автор: Akella 6.9.2006, 08:53
http://forum.vingrad.ru/index.php?showtopic=39624

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)