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 

Single Post  Topic: Рестарт/перезапуск TC 
Author Message
Flasher



PostPosted: Tue Mar 05, 2019 20:16    Post subject: Reply with quote

Avada
А, тебе чистый реверс нужен. Думал, что всегда в 64. Тогда так:
Code:
;:::::::::::::::::::: AU3 ::::::::::::::::::::
; Перезапуск ТС со сменой архитектуры x32<>x64
; Параметр в поле Команда: "%COMMANDER_EXE%"
;:::::::::::::::::::::::::::::::::::::::::::::
#NoTrayIcon
Local $hWnd = WinActive("[CLASS:TTOTAL_CMD]")
If $hWnd Then
  Opt("WinWaitDelay", 40)
  Local $TC = $CmdLine[1], $PFix = '', $n = 4
  WinClose($hWnd)
  ProcessWaitClose(WinGetProcess($hWnd))
  If @OSArch <> 'x86' Then
    If StringRight($TC, 6) = '64.EXE' Then
      $n = 6
    Else
      $PFix = '64'
    EndIf
  EndIf
  $PID = Run(StringLeft($TC, StringLen($TC) - $n) & $PFix & '.EXE')
  WinWaitActive("[CLASS:TTOTAL_CMD]")
  $WSS = ObjCreate('WScript.Shell')
  $WSS.AppActivate($PID)
EndIf
На Win x32 будет стандартный перезапуск.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Thu Mar 07, 2019 21:04; edited 7 times in total
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group