Windows Script Host

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
Volniy
Сообщения: 585
Зарегистрирован: Ср дек 15, 2004 00:17
Откуда: Местный

Сообщение Volniy »

Насчет не read-only свойств и сам пару раз лажался. Например, был уверен, что даты файла из FSO можно только прочитать, а оказалось-то - нет :oops:
Flasher писал(а):На два - ты хотел сказать.
Я же не об этой конкретной строке. Дело в том, что если посмотреть на VBS скрипты тут, на форуме, то можно увидеть еще и более многоэтажные конструкции.

PS Вот сейчас припомнил случай, когда такие нагромождения не работали с 5-ой версии скриптов, а после установки 5.6 они уже заработали. Так что еще зависит и от реализации конкретной версии WSH.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Volniy писал(а):Например, был уверен, что даты файла из FSO можно только прочитать, а оказалось-то - нет
Мануалы устаревшие, получается.
Volniy писал(а):Дело в том, что если посмотреть на VBS скрипты тут, на форуме, то можно увидеть еще и более многоэтажные конструкции.
Что ты под ними понимаешь?
Кстати, "Set N = FSO.GetFile(F)" не помогает. Всё равно на "N.Name =" плюётся сообщением: "Недопустимый вызов или аргумент процедуры". Может, в 7-ке убрали запись? :o
Аватара пользователя
Volniy
Сообщения: 585
Зарегистрирован: Ср дек 15, 2004 00:17
Откуда: Местный

Сообщение Volniy »

Flasher писал(а):Что ты под ними понимаешь?
Сложные вызовы объектов и их свойств/методов. Как бы это попроще... Выражения, в которых много точек :) Ну, например:

Код: Выделить всё

CreateObject("Scripting.FileSystemObject").CreateTextFile(InFile).WriteLine(stroka)
Черт ногу сломает...
Flasher писал(а):Может, в 7-ке убрали запись? :o
Не-а. Вот специально пошел на чужой комп с 7-кой. Все работает, в том числе и первоначальный, навороченный, вариант. Скорее всего какие-то заморочки 7-ки с правами доступа для переименования файла. Проверь.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Volniy писал(а):Черт ногу сломает...
А мне нравится. Не люблю кучу строк, когда можно всё запихнуть в одну (там, где это позволительно, конечно).
Volniy писал(а):Скорее всего какие-то заморочки 7-ки с правами доступа для переименования файла. Проверь.
Род.контроль отключён, софтовой защиты нет, сижу под админом, беру обычные безатрибутные текстовые файлы в папке C:\Тест.
Аватара пользователя
kinecter
Сообщения: 17
Зарегистрирован: Вт ноя 29, 2011 12:33

Сообщение kinecter »

Всем привет!
Много лет посещал этот форум, многому научился а зарегистрировался только сегодня - решил поделиться опытом.
Эту ветку выбрал - показалась она самой подходящей, так как код включает HTA + VBS.
Пару лет уже пользуюсь собственной утилитой для множественной замены текста в файлах.
Вопрос к уважаемому форуму: я могу выкладывать все здесь? или стоит открыть новую ветку? так как кода достаточно много
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

kinecter
Раз много лет посещался форум, то можно было бы за это время научиться определять места надлежащего назначения и пользоваться поиском аналогичных решений.
Эта ветка по обсуждению языка, а не по выкладыванию утилит и скриптов. Большие HTA-коды лучше выкладываеть в MIME, как это делается в подфоруме "Программное обеспечение".
Сами темы уже решались здесь и здесь.
Аватара пользователя
kinecter
Сообщения: 17
Зарегистрирован: Вт ноя 29, 2011 12:33

Сообщение kinecter »

Flasher писал(а):kinecter
Раз много лет посещался форум, то можно было бы за это время научиться определять места надлежащего назначения и пользоваться поиском аналогичных решений.
Эта ветка по обсуждению языка, а не по выкладыванию утилит и скриптов.
.......
Сами темы уже решались здесь и здесь.
Спасибо за совет!
Про поиск и про то где эти темы решались, я в курсе - бывал не раз на тех ветках.

а вот что значит :
Flasher писал(а):.
Большие HTA-коды лучше выкладываеть в MIME
-пока не совсем в курсе. Буду искать, но ежели подскажете - с удовольствием прочитаю ваши советы.
Хотя, собственно HTA код там не слишком большой , ежели отделить от него стили и VBS
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

kinecter
Подсказать может хотя бы справка. HTA имелся в виду в совокупности с остальным кодом. Не по отдельности же выкладывать.
Аватара пользователя
kinecter
Сообщения: 17
Зарегистрирован: Вт ноя 29, 2011 12:33

Сообщение kinecter »

Flasher писал(а):Подсказать может хотя бы справка.
все таки с вашей подсказкой все ищется гораздо быстрее.
Благодарю!
Flasher писал(а):HTA имелся в виду в совокупности с остальным кодом. Не по-отдельности же выкладывать.
По моему, если выкладывать кусками(HTA, STYLE,и VBS на пару частей разделить), то гораздо наглядней получится.
Ну ладно, прикину - померю - посмотрю.
Может мои произведения и не такие уж объемные - чуть больше 200 строк..

Тут на форуме, помнится, встречал портянки и подлиннее.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

kinecter
Радиола от Serge Yolkin - 576 строк.
Аватара пользователя
Andrey_A
Сообщения: 394
Зарегистрирован: Пт апр 10, 2009 06:28
Откуда: Сочи
Контактная информация:

Сообщение Andrey_A »

Появился вопрос
Есть шрифт файл Arialm.ttf
Можно ли методами скриптинга узнать название шрифта "Arial Mod"?

[mod="Avada"]Перемещено из темы Script Request. Данный пост запросом на скрипт не является.[/mod]
Аватара пользователя
Lev
Сообщения: 392
Зарегистрирован: Ср мар 02, 2005 16:34

Сообщение Lev »

В теме wdx ActiveX кинул пример.
Также загляни в Использование wdx-плагинов в скриптах
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Lev
Ты прямо мысли читаешь, только то же самое хотел предложить. :)

Andrey_A
Портабельный вариант:

Код: Выделить всё

' Получить заголовок файла под курсором
' Параметры: "%P" %N
'======================================
Set Folder = CreateObject("Shell.Application").NameSpace(WScript.Arguments(0))
MsgBox Folder.GetDetailsOf(Folder.ParseName(WScript.Arguments(1)), 21)
Аватара пользователя
Andrey_A
Сообщения: 394
Зарегистрирован: Пт апр 10, 2009 06:28
Откуда: Сочи
Контактная информация:

Сообщение Andrey_A »

Flasher и Lev спасибо, уже почти сам догадался...
Использование wdx-плагинов в скриптах будет следующим этапом освоение скриптов...
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

LonerD писал(а):А как в vbs-скрипте узнать, что мы находимся в архиве?
Параметр "%P" без слеша на конце проверить на FSO.FileExists или FSO.FolderExists. Либо проверить на доступность элемент под курсором.
Либо так (убрав путь запуска):

Код: Выделить всё

If CreateObject("WScript.Shell").CurrentDirectory = CreateObject("Scripting.FileSystemObject").GetParentFolderName(WScript.arguments(0)) Then MsgBox "Открыт архив" Else  MsgBox "Открыта папка"
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить