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, 4, 5, 6, 7, 8, 9  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
ingerard



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 19:13    Post subject: Reply with quote

Flasher
Ошибка исчезла, но заходит только в папку на активной панели, на другой ничего не происходит. Хотя если открыть в двух панелях одинаковые пути, типа "c:\" и "c:\", то срабатывает нормально.

p.s. то есть работает только по точным путям кроме буквы диска, а надо чтоб на путь не смотрело.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Dec 24, 2017 19:16    Post subject: Reply with quote

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



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 19:17    Post subject: Reply with quote

Flasher
А у меня только x32.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Dec 24, 2017 19:18    Post subject: Reply with quote

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



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 19:19    Post subject: Reply with quote

Flasher
Win7 x64.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Dec 24, 2017 19:34    Post subject: Reply with quote

ingerard
Проблема в GetTrgPath/SetTrgPath на x64, по-видимому.
Добавлено спустя 16 минут:

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


Last edited by Flasher on Sun Dec 24, 2017 23:08; edited 1 time in total
Back to top
View user's profile Send private message
ingerard



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 19:52    Post subject: Reply with quote

Flasher
Печально, может можно другим приложением решить задачу? Типа TCFS...

Quote:
А как дела обстоят с выходом?

С ним кстати все нормально.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Dec 24, 2017 19:56    Post subject: Reply with quote

ingerard
Можно, конечно. Чуть позже выложу с правками. Слегка занят.
ingerard wrote:
С ним кстати все нормально.
Хорошо.
ingerard wrote:
но заходит только в папку на активной панели, на другой ничего не происходит.
Забыл спросить. А одноимённая папка в другой панели точно имелась?
Quote:
то есть работает только по точным путям кроме буквы диска, а надо чтоб на путь не смотрело
Или кто-то случайно использовал первый вариант. Question
Code:
'============================= VBS =============================
' Синхронное открытие одноимённых каталогов/архивов в панелях ТС
' Условие: требуется TCScript.dll
' Ключ запрета несинхронного открытия: /n
'========================= Путь к TCFS2 ========================
TCFS2 = "%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe"
'===============================================================
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WSS = CreateObject("WScript.Shell")
With CreateObject("TCScript.Helper")
  .Pause = 0 : .Wait = True : .LockTC True
  SP = .GetSrcPath : TP = .GetInfo("TP") : N = .GetInfo("SN")
  If .GetInfo("SN") = ".." Then
    If FSO.GetFileName(SP) = FSO.GetFileName(TP) Then
      If FSO.FolderExists("\\?\" & SP) Then
        For i = 0 To 1 : .SendCommand 2002, 1 : .SendCommand 4006, 1 : Next
      ElseIf FSO.FileExists("\\?\" & Left(SP, Len(SP) - 1)) Then
        WSS.Exec TCFS2 & " /ef ""tcd(`" & SP & ":`,`" & TP & ":`,S)"""
      End If
    End If
  ElseIf FSO.FolderExists("\\?\" & SP & N) Then
    If WSH.Arguments.Named.Exists("n") Then _
    If Not FSO.FolderExists("\\?\" & TP & N) Then WSH.Quit
    WSS.Exec TCFS2 & " /ef ""tcd(`" & SP & N & "`,`" & TP & N & "`,S)"""
  End If : .LockTC False
End With : Set FSO = Nothing

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


Last edited by Flasher on Sun Dec 24, 2017 22:48; edited 1 time in total
Back to top
View user's profile Send private message
ingerard



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 22:28    Post subject: Reply with quote

Flasher wrote:
Забыл спросить. А одноимённая папка в другой панели точно имелась?

Да, конечно.

Flasher wrote:
Или кто-то случайно использовал первый вариант.

Нет, пробовал второй вариант. Только что снова проверил второй вариант, якобы с x64 не работает, так вот если открывать папки с разных дисков и сохранять идентичность путей, то работает. Может дело в другом?

Для наглядности гифка: https://i.imgur.com/vDXwwXp.gifv

Третий скрипт работает, тестирую, пока что нашел баг в параметре /n, он работает наоборот, в одинаковые не заходит.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Dec 24, 2017 22:45    Post subject: Reply with quote

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



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 22:53    Post subject: Reply with quote

Flasher
Супер, второй работает и третий, тестирую что быстрее Smile

Теперь такой вопрос, можно ли сделать какую-то кнопку, при нажатии которой назначался этот скрипт, на клавишу "Enter"?
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Dec 24, 2017 23:00    Post subject: Reply with quote

ingerard wrote:
тестирую что быстрее
Второй должен быть побыстрее.

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



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 23:08    Post subject: Reply with quote

Flasher wrote:
Кнопку как опцию что ли? Т. е. вкл./выкл. назначение в ТС этой команды на ENTER?

Да, нажимаю на кнопку и далее по клавише "Enter" работает скрипт. И еще как бы решить проблему "Backspace", не всегда удобно возвращать курсор на ".." и нажимать "Enter". Может сделать еще один параметр в скрипте, для отработки именно выхода из папки?
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Dec 24, 2017 23:27    Post subject: Reply with quote

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



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Sun Dec 24, 2017 23:40    Post subject: Reply with quote

Flasher wrote:
Ключ добавил.

Работает.

AHK это еще один лишний багаж, с которым могут быть проблемы с портативностью Sad

Flasher wrote:
Либо тупо обновлять ключ ENTER секции Shortcuts в wincmd.ini

Я подобное делал, только проблема заключается потребности перезагрузки ТК.
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, 4, 5, 6, 7, 8, 9  Next
Page 2 of 9

 
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