Страница 1 из 4
Новый файлик ...
Добавлено: Ср дек 13, 2006 22:52
Yurbanizator
Задача: необходимо расположить на панели кнопочку, или пару кнопочек, что бы при нажатии в выбранном каталоге появлялся допустим новый текстовый файлик new.txt или же файл new.html с уже созданным заренее шаблончиком.
Вопрос: как это реализовать в ТС???
[mod="Avada"]С учётом характера и предмета последующей дискуссии дальнейшее нахождение этой темы в подфоруме "Секреты и советы" сочтено нецелесообразным. Тема переносится в "Автоматизацию".[/mod]
Добавлено: Чт дек 14, 2006 00:20
D1P
Уже обсуждалось, ответ тут:
http://tckb.megabyte-web.ru/content/view/401/93/
Исполнение немного другое, но суть та же, разница в том, что надо не хоткей настраивать, а кнопку.
Добавлено: Чт дек 14, 2006 01:20
BeTeP
Если я правильно понял, то ему надо создать не пустой файл, а шаблон, т.е. в файле уже должна быть записана определенная информация.
Добавлено: Чт дек 14, 2006 08:06
Yurbanizator
BeTeP писал(а):Если я правильно понял, то ему надо создать не пустой файл, а шаблон, т.е. в файле уже должна быть записана определенная информация.
Да совершенно верно, должен быть не пустой файл а файл, содержащий некий заранее подготовленный шаблон.
Так например, new.htm должен содержать
Код: Выделить всё
<html>
<head>
<title>Untitled</title>
</head>
<body>
Hello World!
</body>
</html>
[/code]
Добавлено: Чт дек 14, 2006 14:31
StrangeRRor
Для примера с HTML можно написать bat-файл следующего содержания:
Код: Выделить всё
@echo off
set OUTPUTFILE=%1
echo ^<html^> >%OUTPUTFILE%
echo ^<head^> >>%OUTPUTFILE%
echo ^<title^>Untitled^</title^> >>%OUTPUTFILE%
echo ^</head^> >>%OUTPUTFILE%
echo ^<body^> >>%OUTPUTFILE%
echo Hello World! >>%OUTPUTFILE%
echo ^</body^> >>%OUTPUTFILE%
echo ^</html^> >>%OUTPUTFILE%
Добавить на панель кнопку для этого файла с параметром "?", например, для того что бы задавать нужное имя файла-результата.
Добавлено: Пт дек 15, 2006 20:07
Yurbanizator
С копированием шаблона все очень хорошо получилось, цель достигнута. Только возможно ли сделать так что бы при выполнении батника командная строка не мелькала? echo off хоть и минимизирует отображение комманд, но все же окошко успевает промелькнуть...
Это хоть и не обязательно, но вот бы довести до идеала...
Добавлено: Пт дек 15, 2006 20:56
D1P
То же самое можно написать и на VBS, без всяких досовских окошек. Но это к нашим скриптописателям, я в VBS не силён.
Добавлено: Пт дек 15, 2006 21:01
Yurbanizator
Да действительно, я об этом как то сразу и не подумал...
Стоит попробовать, с vbs немного знаком...
Добавлено: Сб дек 16, 2006 01:50
Volniy
Сохранить как VBS-файл, параметром передавать имя файла
Код: Выделить всё
Dim fso, F
Set fso = CreateObject("scripting.filesystemobject")
F = WScript.Arguments(0)
Set F=fso.OpenTextFile(F, 2, True)
F.WriteLine("<html>")
F.WriteLine("<head>")
F.WriteLine("<title>Untitled</title>")
F.WriteLine("</head>")
F.WriteLine("<body>")
F.WriteBlankLines(1)
F.WriteLine("Hello World!")
F.WriteBlankLines(1)
F.WriteLine("</body>")
F.WriteLine("</html>")
Set F=Nothing
Set fso=Nothing
WScript.Quit
Добавлено: Сб дек 16, 2006 17:55
Yurbanizator
Благодарю за скриптик, но дело в том что этот скрипт сам записывает в файл все строки HTML кода.
А как сделать так что бы был в отдельной папке заранее заготовленный шаблон, и при помощи скрипта это файл копировался в текущий каталог? Вот вопрос.
Добавлено: Сб дек 16, 2006 18:53
Volniy
Yurbanizator писал(а):А как сделать так что бы был в отдельной папке заранее заготовленный шаблон, и при помощи скрипта это файл копировался в текущий каталог? Вот вопрос.
Рази ж ето вопрос

А говорил ведь, что
Yurbanizator писал(а):с vbs немного знаком..
Код: Выделить всё
Dim fso
Const Template="буква диска:\путь к файлу шаблона\template.html"
Set fso = CreateObject("scripting.filesystemobject")
fso.CopyFile Template, WScript.Arguments(0), True
Set fso=Nothing
WScript.Quit
Хотя скрипт тут нафиг не нужен, ведь команду
Copy еще пока никто не отменял. Имхо разумнее ее задействовать, прямо в кнопке.
Добавлено: Сб дек 16, 2006 19:00
Yurbanizator
Знаком немного. Давно писал чегоТо... Покопался в справочнике и вспомнил мож чего к чему... но уже опередили. Благодарю..
Добавлено: Сб дек 16, 2006 20:04
Yurbanizator
Хотя скрипт тут нафиг не нужен, ведь команду Copy еще пока никто не отменял. Имхо разумнее ее задействовать, прямо в кнопке
Пробовал не получилось...
Ваш скрипт не захотел работать , пока не переименовал переменную в objFSO!!!
Но вот незадача ... файл копируется, но в ТС не отображается пока не обновишь окошко директории! Что делать?
Добавлено: Сб дек 16, 2006 21:51
D1P
Но вот незадача ... файл копируется, но в ТС не отображается пока не обновишь окошко директории! Что делать?
Слать TC команду cm_RereadSource, но хз, можно ли это сделать средствами VBS. С использованием ScriptHelper - точно можно.
Добавлено: Сб дек 16, 2006 23:32
Volniy
Yurbanizator писал(а):Пробовал не получилось...
Ваш скрипт не захотел работать , пока не переименовал переменную в objFSO!!!
Послушай совет старика - никогда не садись за комп под шофе

Чревато...
Yurbanizator писал(а):Но вот незадача ... файл копируется, но в ТС не отображается пока не обновишь окошко директории! Что делать?
http://forum.wincmd.ru/viewtopic.php?p=13013#13013