Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Как заменить в файле TAB пути ...
Goto page 1, 2, 3, 4, 5, 6  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
alexfmos



Joined: 29 Jun 2005
Posts: 78

Post (Separately) Posted: Wed Jun 03, 2015 11:44    Post subject: Как заменить в файле TAB пути ... Reply with quote

Как заменить в файле TAB пути к вкладкам, на некую переменную. В гугле ищу, пока безрезультатно.
Задача такая. Сохраняем вкладки в tab, получается что-то вроде
Code:
0_path=f:\My doc\Projects\PROJECTNAME\folder01\
1_path=f:\My doc\Projects\PROJECTNAME\folder02\
2_path=f:\My doc\Projects\PROJECTNAME\folder03\
...

Я кладу файл tab в папку PROJECTNAME, и по щелчку на нём у меня открываются несколько вкладок из этой папки.
В следующем PROJECTNAME_2 мне надо копировать файл tab, но заменить в нём PROJECTNAME на PROJECTNAME_2.
Так вот, можно ли не заменять вручную, а вместо PROJECTNAME_1-... написать какую то переменную, которая заменяла бы его на текущий каталог, т.к. файл находиться в этой PROJECTNAME.
Ищу эту переменную в гугле, %CD% не работает.

Ну и уж совсем в идеале, как можно создать такой файл tab в текущем катлоге по щелчку мыши.
Спасибо заранее.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jun 03, 2015 13:18    Post subject: Reply with quote

Не поздновато ли объяснять, что такие вещи общих вопросов не касаются?
Code:
' Параметры: "<путь к файлу-исходнику>" <строка поиска>
' Путь запуска - пустой
Dim WSH : Set WSH = CreateObject("WScript.Shell")
CD = WSH.CurrentDirectory : Set A = WScript.Arguments
With CreateObject("Scripting.FileSystemObject")
  If CD = .GetParentFolderName(A(0)) Then WScript.Quit
  NF = CD & "\" & .GetFileName(A(0)) : .OpenTextFile(NF, 2, True)._
  Write Replace(.OpenTextFile(A(0)).ReadAll, "\" & A(1) & "\", "\" & .GetFileName(CD) & "\")
End With : WSH.Run """%COMMANDER_EXE%"" /O /S /L=""" & NF & """"

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Wed Jun 03, 2015 21:09; edited 1 time in total
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10257
Location: Россия, Саратов

Post (Separately) Posted: Wed Jun 03, 2015 15:18    Post subject: Reply with quote

alexfmos
Замечание за оффтоп. Тема перенесена в Автоматизацию.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
alexfmos



Joined: 29 Jun 2005
Posts: 78

Post (Separately) Posted: Wed Jun 03, 2015 15:29    Post subject: Reply with quote

Flasher
Извините, но я совершенно не понимаю что мне с этим делать, и как это относится к моему вопросу. Sad
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10257
Location: Россия, Саратов

Post (Separately) Posted: Wed Jun 03, 2015 16:43    Post subject: Reply with quote

alexfmos
Что с этим делать, рассказывалось множество раз. В том числе в теме, чтение которой в этом подфоруме вообще-то обязательно.
А оверквотинг на форуме запрещён. Ненужные излишества из предыдущего поста удалены.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
alexfmos



Joined: 29 Jun 2005
Posts: 78

Post (Separately) Posted: Wed Jun 03, 2015 16:56    Post subject: Reply with quote

Я понимаю как запускать скртипты, я не понимаю как этот скрипт работает, и как мне применить его к своему случаю. Что мне нужно сделать чтобы открывались нужные вкладки.
Ладно видимо это всё очень сложно. Я не программист и ничего в этом не смыслю. Извините.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10257
Location: Россия, Саратов

Post (Separately) Posted: Wed Jun 03, 2015 17:41    Post subject: Reply with quote

alexfmos
Знаете, я тоже не программист. Но всё-таки предполагаю, что до выяснения, что и как применять, следовало прочитать ту самую памятку, создать файл со скриптом и (хотя бы в первом приближении, без параметров) соответствующую кнопку. Это сделано? Если да, очевидно, последуют какие-то конструктивные рекомендации.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
alexfmos



Joined: 29 Jun 2005
Posts: 78

Post (Separately) Posted: Wed Jun 03, 2015 17:55    Post subject: Reply with quote

Кнопка сделана, при запуске выскакивает виндовый диалог с какой помощью открыть программу. Файл с каким расширением надо сохранить?

UPD: Предположил что VBS, тогда при запуске выскакивает ошибка Индекс выходит за пределы допустимого диапазона
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10257
Location: Россия, Саратов

Post (Separately) Posted: Wed Jun 03, 2015 19:15    Post subject: Reply with quote

alexfmos
Разумеется, VBS (обычно этот тут предполагается по умолчанию, в противном случае оговаривается). Сообщайте подробности об ошибке (Ctrl+C на окне, здесь вставить как код) и дальше с Flasher совместными усилиями разбирайтесь с параметрами и прочим, я в это влезать не буду.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
alexfmos



Joined: 29 Jun 2005
Posts: 78

Post (Separately) Posted: Wed Jun 03, 2015 19:27    Post subject: Reply with quote

Code:
Сценарий:   D:\temp\1.vbs
Строка:   6
Символ:   3
Ошибка:   Индекс выходит за пределы допустимого диапазона
Код:   800A0009
Источник:    Ошибка выполнения Microsoft VBScript



Я правильно понимаю, что в параметре кнопки надо написать путь к файлу tab или как?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jun 03, 2015 20:29    Post subject: Reply with quote

alexfmos
Avada привёл ссылку. Там всё подробно описано, что и как. Параметров сколько в шапке указано?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
alexfmos



Joined: 29 Jun 2005
Posts: 78

Post (Separately) Posted: Wed Jun 03, 2015 20:33    Post subject: Reply with quote

Я же написал, что выполнил это, при запуске скрипта вываливается ошибка, сообщением выше. Можно в двух словах описать что делать? Копирую скрипт, сохраняю как VBS, создаю кнопку, в параметрах вроде как путь к файлу tab. Что дальше? Где должен лежать сам скрипт? Что он должен вообще сделать?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jun 03, 2015 20:37    Post subject: Reply with quote

Выполнена только малая часть описанного. Если читать внимательно и выполнять все детали описания, включая нижнюю при возникновении проблем, то ошибки и лишних вопросов у меня не будет, а сразу появится результат перед глазами.
А делает скрипт именно то, что запрашивалось:
alwexfmos wrote:
"создать такой файл tab в текущеактивном каталоге по щелчку мыши".

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
alexfmos



Joined: 29 Jun 2005
Posts: 78

Post (Separately) Posted: Wed Jun 03, 2015 20:50    Post subject: Reply with quote

Еще раз.

Quote:
Сценарий: F:\My doc\Projects\Cafe_Randr\1.vbs
Строка: 7
Символ: 40
Ошибка: Ввод данных за пределами файла
Код: 800A003E
Источник: Ошибка выполнения Microsoft VBScript

Параметр - путь к tab в кавычках
TC 7.55
win 64
Quote:
C:\Windows\SYSTEM32\wscript.exe
on Microsoft Windows Vista, Workstation version 6.7601

Что еще я могу сказать?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed Jun 03, 2015 20:55    Post subject: Reply with quote

См. п. 5 и 7. Внимательно! Где строка поиска?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page 1, 2, 3, 4, 5, 6  Next
Page 1 of 6

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group