Создание файла с содержимым на основе имени другого файла
Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik
-
KrechetovRS
- Сообщения: 14
- Зарегистрирован: Вт июн 21, 2011 22:49
-
KrechetovRS
- Сообщения: 14
- Зарегистрирован: Вт июн 21, 2011 22:49
KrechetovRS
Т.е. портабельность не нужна? Ну, смотри. Я вообще-то спрашивал про реальный путь, а не строку в скрипте.
Т.е. портабельность не нужна? Ну, смотри. Я вообще-то спрашивал про реальный путь, а не строку в скрипте.
Последний раз редактировалось Flasher Пн июн 27, 2011 12:26, всего редактировалось 1 раз.
-
KrechetovRS
- Сообщения: 14
- Зарегистрирован: Вт июн 21, 2011 22:49
-
KrechetovRS
- Сообщения: 14
- Зарегистрирован: Вт июн 21, 2011 22:49
-
KrechetovRS
- Сообщения: 14
- Зарегистрирован: Вт июн 21, 2011 22:49
Понятно, возможно, версия старовата для этой фичи. В общем, если не работает и портабельность тебе не нужна, то используем старый дедовский метод. Регистрируй хелпер, а скрипт будет такой:
Самое главное забыл спросить - параметр (путь назначения) какой указывался? Если "%P", то не удивительно, что не работает. Файлы, AFAIK, с помощью стандартных методов WSH могут создаваться только на обычном (несетевом) носителе. Поэтому лучше в другой панели открыть каталог обычного диска и оставить "%T" либо указать постоянный путь к каталогу на этом диске.
Код: Выделить всё
' Создать файлы с именами выделенных в каталоге сетевого устройства
' файлов, расширением M3U и соответствующим NFS-путём в их содержимом
' Необходима регистрация Script Helper ActiveX for TC
' Параметры: "Путь назначения>\" <фильтр-расширение>
' Пример:"%T" mkv
'===================================================
With CreateObject("TCScript.Helper")
T=.GetTextFromClip
.SendCommand 2021
Clip=.GetTextFromClip
.SetTextToClip(T)
End With
With CreateObject("Scripting.FileSystemObject")
For Each F In Split(Clip, vbNewLine)
If .GetExtensionName(F)=WScript.Arguments(1) Then
Set N = .OpenTextFile(WScript.Arguments(0)&.GetBaseName(F)&".m3u",2,True)
N.WriteLine "nfs:"&F
N.Close
End If
Next
End With
WScript.Quit