Я пытаюсь создать две разные горячие клавиши, которые запускают два независимых экземпляра приложения. Когда открывается второй, к заголовку окна добавляется «[2]», что очень полезно для меня. Но это не работает мой код ниже. Например, когда я открываю второй экземпляр, не только «[2]» не появляется, но и первый экземпляр * без предварительного номера »не запускается.

Как я могу иметь две горячие клавиши, чтобы открыть каждое окно, не зависящее друг от друга?

#1:: 
      IfWinExist Total Commander (x64) 8.51a - NP
      {
      WinWait Total Commander (x64) 8.51a - NP
      WinActivate
      }
      else
      Run c:\Program Files\Total Commander\TOTALCMD64.EXE,,Max
      {
      WinWait Total Commander (x64) 8.51a - NP
      WinActivate
      }
 Return

 #2::  ; application title should show [2] weather the other is opened or not  ; corrected indentation here
      IfWinExist [2] Total Commander (x64) 8.51a - NP
      {
      WinWait [2] Total Commander (x64) 8.51a - NP
      WinActivate
      }
      else
      Run c:\Program Files\Total Commander\TOTALCMD64.EXE,,Max
      {
      WinWait [2] Total Commander (x64) 8.51a - NP
      WinActivate
      }
    Return

1 ответ1

0

Я думаю, у вас немного не хватает блоков кода, попробуйте это:

tc_title:="Total Commander (x64) 8.51a"
tc_path:="c:\Program Files\Total Commander\TOTALCMD64.EXE"

#1:: 
IfWinExist %tc_title%
    {
     WinActivate %tc_title%
    }
else IfWinNotExist %tc_title%
    {
     Run %tc_path%,,Max
     WinWait %tc_title%
     WinActivate
    }
Return
#2::
IfWinExist [2] %tc_title%
    {
     WinActivate [2] %tc_title%
    }
else IfWinNotExist [2] %tc_title%
    {
     Run %tc_path%,,Max
     WinWait [2] %tc_title%
     WinActivate
    }
Return

См. Http://ahkscript.org/docs/commands/Block.htm для получения дополнительной информации.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .