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 

Обсуждение темы "Обмен кнопками"
Goto page Previous  1, 2, 3 ... 79, 80, 81
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
aLLigator



Joined: 01 Dec 2011
Posts: 162
Location: из тех ворот, что и весь народ...

Post (Separately) Posted: Mon Sep 06, 2021 14:58    Post subject: Reply with quote

imig73 ладно, чуть детальнее..
Файл work.abc представляет собой TrueCrypt контейнер (abc это просто расширение файла), по двойному клику на который происходит запуск этого скрипта:
Code:
Dim strDriveLetter

Dim strPath2App

If WScript.Arguments.Count = 1 Then
   strContainerFile = WScript.Arguments.Item(0)
   
   With WScript.CreateObject("Scripting.FileSystemObject")
      If .FileExists(strContainerFile) Then
         strPath2TrueCrypt = .BuildPath(WScript.CreateObject("Shell.Application").NameSpace("shell:ProgramFiles").self.Path, "TrueCrypt\TrueCrypt.exe")
         
         If .FileExists(strPath2TrueCrypt) Then
            strDriveLetter = Left(.GetBaseName(strContainerFile), 1) & ":"
            
            If Not .DriveExists(strDriveLetter) Then
               WScript.CreateObject("WScript.Shell").Run """" & strPath2TrueCrypt & """ /letter " & strDriveLetter & " /volume """ & strContainerFile & """ /p *** /history n /cache y /mountoption removable /quit", 1, True

               strPath2App = .BuildPath(strDriveLetter, "autorun.vbs")
               
               If .FileExists(strPath2App) Then
                  WScript.CreateObject("WScript.Shell").Run """" & strPath2App & """", 1, False
               Else
                  WScript.Quit 4
               End If

            Else
               WScript.CreateObject("WScript.Shell").Run """" & strPath2TrueCrypt & """ /dismount " & strDriveLetter & " /quit", 1, False
            End If

         Else
            WScript.Echo "Can't find [" & strPath2TrueCrypt & "]."
            WScript.Quit 3
         End If
      Else
         WScript.Echo "Can't find TrueCrypt container file [" & strContainerFile & "]."
         WScript.Quit 2
      End If
   End With
Else
   WScript.Echo "Usage: " & WScript.ScriptName & " <TrueCrypt container file>"
   WScript.Quit 1
End If

WScript.Quit 0

т.е. тут важно как имя файла так и то что в первый раз идет монтирование, а при повторном "запуске" демонтирование.
Хочу еще чуть автоматизировать и запускать (монтировать/демонтировать) с панели инструментов.
Back to top
View user's profile Send private message
imig73



Joined: 18 Jun 2013
Posts: 227
Location: г. Иркутск

Post (Separately) Posted: Mon Sep 06, 2021 15:24    Post subject: Reply with quote

aLLigator
К сожалению я не знаю что делать с TrueCrypt контейнером и расширением abc.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2383

Post (Separately) Posted: Mon Sep 06, 2021 16:03    Post subject: Reply with quote

aLLigator
Кнопка с командой cm_ContextMenuInternalCursor не подойдёт?
Back to top
View user's profile Send private message
aLLigator



Joined: 01 Dec 2011
Posts: 162
Location: из тех ворот, что и весь народ...

Post (Separately) Posted: Mon Sep 06, 2021 17:01    Post subject: Reply with quote

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



Joined: 29 Apr 2009
Posts: 2383

Post (Separately) Posted: Mon Sep 06, 2021 17:16    Post subject: Reply with quote

aLLigator wrote:
а затем обратно на файл и выпадающее меню
Эту часть можно было бы и автоматизировать.
Только теперь понял, что файл не надо держать под курсором, скорее наоборот.
Можно, конечно, предварительно выполнить пользовательскую команду (на основе cd) для перехода к нужному файлу, затем программный аналог для ENTER, а в конце вернуться обратно...
Что-то наподобие такой сцепки команд: em_cd_work_abc,cm_Return,cm_GotoPreviousDir .


Last edited by sa on Mon Sep 06, 2021 22:54; edited 1 time in total
Back to top
View user's profile Send private message
aLLigator



Joined: 01 Dec 2011
Posts: 162
Location: из тех ворот, что и весь народ...

Post (Separately) Posted: Mon Sep 06, 2021 19:35    Post subject: Reply with quote

Решил таки свою задачу:
Code:
TOTALCMD#BAR#DATA
"%COMMANDER_PATH%\TrueCrypt_rm.vbs" "d:\work.edc"

C:\Program Files (x86)\TotalCommander\ICO\sys\edc.ico


0
-1
Back to top
View user's profile Send private message
krmit



Joined: 09 Nov 2019
Posts: 6

Post (Separately) Posted: Tue Nov 16, 2021 17:45    Post subject: Reply with quote

Помогите, пожалуйста, доработать кнопочку http://forum.wincmd.ru/viewpost.php?p=66683, чтобы ярлык переименовывался именем папки, в которой лежит исходный файл.
ЗЫ: если кнопкой такое не получится, можно на скрипт заменить.
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 Previous  1, 2, 3 ... 79, 80, 81
Page 81 of 81

 
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