首页 > 其他分享 >按快捷键 ` 显示或者隐藏 Total Commander 10.52 主窗口 2023-2-5 (快捷键 ` 即波浪键~,位于Esc键正下方,位于Tab键正上方)

按快捷键 ` 显示或者隐藏 Total Commander 10.52 主窗口 2023-2-5 (快捷键 ` 即波浪键~,位于Esc键正下方,位于Tab键正上方)

时间:2023-02-07 18:12:37浏览次数:64  
标签:exe 快捷键 Commander ANSI 2023 Go Total

 

  按快捷键 ` 显示或者隐藏 Total Commander 10.52 主窗口 2023-2-5

        (快捷键 ` 即波浪键~,位于Esc键正下方,位于Tab键正上方)

 

  https://ds920.lanzoum.com/b012kc8cb
密码:  3333   

 

以前的显示隐藏窗口脚本灵敏度有点低,寻找测试了几个月都没有任何进展,直到看到了飞跃大侠的脚本才完美的解决了快捷键反应迟钝的问题。

;
;   Total Commander 10.52 简体中文增强版能够通过 拼音首字母序列字符串筛选过滤文件列表,
;   文件夹中的文件和文件名都可以自己整理整顿清理,
;   通过TC访问整理之后的文件夹可以快速高效的找到当前所需的文件
;   (文档、表格、图片、音乐、视频、源码、快捷方式、网址链接、收藏夹书签、Synology群晖NAS映射网络驱动器等等)
;

由于此脚本已经设置快捷键为  `      ( 即波浪键~,位于Esc键正下方,位于Tab键正上方 )所以无需在Maye Lite 中设置快捷键了。

需要改成其他快捷键也是可以的,只要修改以下此AHK脚本好了,但是Maye Lite中不用再设置快捷键了。

设置启动系统时自动运行 Maye Lite 和 设置显示或者隐藏 Total Commander 10.52 主窗口快捷键的AutoHotkey脚本(即,此脚本,按快捷键 Win + R 输入 Shell:Startup 回车 )

https://wwi.lanzouq.com/b0bs5bidc

https://blog.arae.cc/post/25842.html

https://github.com/25H/MayeLite/releases/latest

 

多进程热键——快速响应随时中止 v2.1

https://www.autoahk.com/archives/41422

;
;
;   按快捷键 ` 显示或者隐藏 Total Commander 10.52 主窗口 2023-2-5 (快捷键 ` 即波浪键~,位于Esc键正下方,位于Tab键正上方)
;   Total Commander 10.52 简体中文增强版能够通过 拼音首字母序列字符串筛选过滤文件列表,
;   文件夹中的文件和文件名都可以自己整理整顿清理,
;   通过TC访问整理之后的文件夹可以快速高效的找到当前所需的文件
;   (文档、表格、图片、音乐、视频、源码、快捷方式、网址链接、收藏夹书签、Synology群晖NAS映射网络驱动器等等)
;


/*函数名: Single
设置互斥体,阻止脚本重复运行
功能与#SingleInstance差不多,只是这玩样可以自定义
另:
经测试发现#SingleInstance只识别脚本文件名,改名可重复运行,
在有热键的脚本里要使用 #SingleInstance,off 关闭此功能.
参数:
给这个脚本设置一个独一无二的识别字符串(指纹?)
返回值: 1 为重复,0为第一次

例子:
Single("7EF47F0D-4D37-542E-5787-90FDD196D04B")
Single("123")
*/
Single(flag) { ;,返回1为重复,返回0为第一个运行
	DllCall("CreateMutex", "Ptr",0, "int",0, "str", "Ahk_Single_" flag)
	return A_LastError=0xB7 ? true : false
}
; =========================
; 使用案例,脚本改名都没用,照样只能运行一个.
/*
#SingleInstance,Off ;关闭自带互斥功能
if (Single("0024")) {  ;独一无二的字符串用于识别脚本,或者称为指纹?
; MsgBox,16,提示,程序已启动!`n请勿重复运行
ExitApp
}
*/

#SingleInstance,force

; 强制自身以 ansi + 管理员权限 运行,编译此脚本时选择 ANSI 。
; runwith("","ansi")

;-----------------------------------
; 多进程热键——快速响应随时中止 v2.1  By FeiYue
;
; 1、一般的多进程热键,每次按热键都会重新启动一个进程
;    这会造成热键响应延迟,和频繁启动、退出进程。
;    这个库利用线程叠加和双进程交替重启的设计解决了上述问题
;
; 2、Go.Go("标签名或函数名", 序号可省略)  启动子进程
;    Go.Go("清理标签或为空", 序号可省略)  停止子进程
;-----------------------------------
class Go {  ;// 类开始
	init() {
static h:=Go.init()
#NoEnv
#NoTrayIcon
#SingleInstance force
#MaxThreads 255
if (A_Args.Length()>0)
{
	Suspend, On
	flag:="Ahk_Sub"
	s:=RegExReplace(A_Args[1], "\s")
	this.WinKill(flag "[" s "]")
	r:=this.Menu_Go.Bind(this)
	Menu, MyMenu, Add, Run, % r
	Gui, %flag%: Add, Text, 0x80 -Wrap
	Gui, %flag%: Menu, MyMenu
	Gui, %flag%: Show, Hide, % flag "[" s "]"
	return
Ahk_SubGuiClose:
	Critical
	WinMenuSelectItem,,, 1&
return
}
else
{
	flag:="Ahk_Main"
	this.WinKill(flag)
	Gui, %flag%: Show, Hide, % flag
	OnExit(this.WinKill.Bind(this,"Ahk_Sub"))
	Menu, Tray, Icon
}
}
Menu_Go() {
	ControlGetText, s
	s:=Trim(s)
	if (s="Reload")
	{
		WinGetTitle, s
		this.RunAhk(RegExReplace(s,"Ahk_Sub\[|]"))
		ExitApp
	}
	if IsLabel(s)
		gosub, %s%
	else if IsFunc(s)
		%s%()
	loop
		Sleep, 60000
}
WinKill(flag) {
	DetectHiddenWindows, On
	WinGet, list, List, % flag " ahk_class AutoHotkeyGUI"
	loop % list
		IfWinExist, % "ahk_id " list%A_Index%
		{
			WinGet, pid, PID
			WinClose, ahk_class AutoHotkey ahk_pid %pid%,, 3
			IfWinExist,,, Process, Close, %pid%
		}
	DetectHiddenWindows, Off
}
RunAhk(s="") {
	if (A_IsCompiled)
		Run, "%A_ScriptFullPath%" /f %s%
	else
		Run, "%A_AhkPath%" /f "%A_ScriptFullPath%" %s%
}
; 一个进程叠加超过100个线程就切换另一个进程,原进程重启
Go(LabelOrFuncName="", index=0) {
	static arr:=[]
	DetectHiddenWindows, On
	SetFormat, IntegerFast, d
	index:=Floor(index), (!arr[index] && arr[index]:=[0,0])
		, ii:=Floor(arr[index][1]), jj:=Floor(arr[index][2])
		, tt:="Ahk_Sub[" index "_" jj "]"
	if (++ii>100)
	{
		IfWinExist, % tt
		{
			ControlSetText,, Reload
			WinClose
		}
		else
			this.RunAhk(index "_" jj)
		arr[index][2]:=jj:=!jj, ii:=1
			, tt:="Ahk_Sub[" index "_" jj "]"
	}
	arr[index][1]:=ii
	IfWinNotExist, % tt
	{
		this.RunAhk(index "_" jj)
		WinWait, % tt,, 3
	}
	IfWinExist, % tt
	{
		ControlSetText,, % LabelOrFuncName
		WinClose
	}
	DetectHiddenWindows, Off
}
}  ;// 类结束
;======== 下面是使用的例子 =========
;-- 按住松开型循环
/*
$F1::
Go.Go("aaa")
KeyWait, F1
Go.Go()
return
aaa:
i:=1
loop
ToolTip, % "按住松开型循环-" i++
return
*/
;-- 两次开关型循环
`:: (ok:=!ok) ? Go.Go("bbb") : Go.Go("ccc")
bbb:
	; ToolTip,bbb
	; Process,Exist,TotalCMD.exe
	; if (%ErrorLevel%=0)
	DetectHiddenWindows,On
	SetTitleMatchMode,2
	; IfWinNotExist,Total Commander   or   IfWinNotExist,ahk_class TTOTAL_CMD
	IfWinNotActive,Total Commander   or   IfWinNotActive,ahk_class TTOTAL_CMD
	{

		;-----------------------------------
		; Maye Lite 和 此脚本中的快捷键都一致相同的设置为 ` ( 即波浪键~,位于Esc键正下方,位于Tab键正上方 )
		; 搜索根目录中含有文件夹filter-file-with-totalcmd的磁盘分区
		; 并用 Total Commander 10.52 简体中文增强版打开找到的文件夹
		; 一旦找到文件夹后会继续寻找其他磁盘分区,
		; 找到最靠后的含有文件夹filter-file-with-totalcmd的磁盘分区后会用Total Commander打开找到的文件夹filter-file-with-totalcmd
		; Total Commander的右半边窗口的当前路径保持不变,只改变左半边的窗口的当前路径
		; 此时只需要在 Total Commander 窗口中输入 "拼音首字母" 字符串序列就可以筛选过滤当前的文件列表
		;-----------------------------------

		IfExist,D:\Prog\TotalCMD\TotalCMD64.exe
		{
			Run,D:\Prog\TotalCMD\TotalCMD64.exe
		}
		else
		{
			MsgBox,0,找不到文件 D:\Prog\TotalCMD\TotalCMD64.exe
			ExitApp
		}

		DriveGet,DriveList,List
		; loop,Parse,CDEFGHIJKLMNOPQRSTUVWXYZ
		loop, Parse, DriveList
		{
			IfExist,%A_LoopField%:\filter-file-with-totalcmd
			{
				IfExist,D:\Prog\TotalCMD\TotalCMD64.exe
				{
					Run,D:\Prog\TotalCMD\TotalCMD64.exe %A_LoopField%:\filter-file-with-totalcmd
				}
			}
		}
	}
	loop,3
	{
		WinGet, WinID, ID,Total Commander ahk_class TTOTAL_CMD
		DllCall("SwitchToThisWindow", "UInt", WinID, "UInt", 1)
		WinShow,Total Commander ahk_class TTOTAL_CMD
		WinActivate,Total Commander ahk_class TTOTAL_CMD
		WinMove,Total Commander ahk_class TTOTAL_CMD,,0,0,A_ScreenWidth,A_ScreenHeight
		WinMaximize,Total Commander ahk_class TTOTAL_CMD
	}
return
ccc:
	; ToolTip,ccc
	WinMinimize,Total Commander ahk_class TTOTAL_CMD
return


/*

; 强制自身进程以 管理员权限 或 普通权限 或 ANSI 或 U32 或 U64 版本运行。
; 例1: runwith("admin","u32") 强制自身以 u32 + 管理员权限 运行。
; 例2: runwith("","ansi")     强制自身以 ansi 版本运行(权限不变)。
; 例3: runwith("normal")      强制自身以 普通权限 运行(版本不变)。
RunWith(RunAsAdmin:="Default", ANSI_U32_U64:="Default")
{
; 格式化预期的模式
switch, RunAsAdmin
{
case "Normal","Standard","No","0":		RunAsAdmin:=0
case "Admin","Yes","1":								RunAsAdmin:=1
case "default":												RunAsAdmin:=A_IsAdmin
default:															RunAsAdmin:=A_IsAdmin
}
switch, ANSI_U32_U64
{
case "A32","ANSI","A":								ANSI_U32_U64:="AutoHotkeyA32.exe"
case "U32","X32","32":								ANSI_U32_U64:="AutoHotkeyU32.exe"
case "U64","X64","64":								ANSI_U32_U64:="AutoHotkeyU64.exe"
case "default":												ANSI_U32_U64:="AutoHotkey.exe"
default:															ANSI_U32_U64:="AutoHotkey.exe"
}
; 获取传递给 “.ahk” 的用户参数(不是 /restart 之类传递给 “.exe” 的开关参数)
for k, v in A_Args
{
if (RunAsAdmin=1)
{
; 转义所有的引号与转义符号
v:=StrReplace(v, "\", "\\")
v:=StrReplace(v, """", "\""")
; 无论参数中是否有空格,都给参数两边加上引号
; Run       的内引号是 "
ScriptParameters  .= (ScriptParameters="") ? """" v """" : A_Space """" v """"
}
else
{
; 转义所有的引号与转义符号
; 注意要转义两次 Run 和 RunAs.exe
v:=StrReplace(v, "\", "\\")
v:=StrReplace(v, """", "\""")
v:=StrReplace(v, "\", "\\")
v:=StrReplace(v, """", "\""")
; 无论参数中是否有空格,都给参数两边加上引号
; RunAs.exe 的内引号是 \"
ScriptParameters .= (ScriptParameters="") ? "\""" v "\""" : A_Space "\""" v "\"""
}
}
; 判断当前 exe 是什么版本
if (!A_IsUnicode)
RunningEXE:="AutoHotkeyA32.exe"
else if (A_PtrSize=4)
RunningEXE:="AutoHotkeyU32.exe"
else if (A_PtrSize=8)
RunningEXE:="AutoHotkeyU64.exe"
; 运行模式与预期相同,则直接返回。 ANSI_U32_U64="AutoHotkey.exe" 代表不对 ahk 版本做要求。
if (A_IsAdmin=RunAsAdmin and (ANSI_U32_U64="AutoHotkey.exe" or ANSI_U32_U64=RunningEXE))
return
; 如果当前已经是使用 /restart 参数重启的进程,则报错避免反复重启导致死循环。
else if (RegExMatch(DllCall("GetCommandLine", "str"), " /restart(?!\S)"))
{
预期权限:=(RunAsAdmin=1) ? "管理员权限" : "普通权限"
当前权限:=(A_IsAdmin=1)  ? "管理员权限" : "普通权限"
ErrorMessage=
(LTrim
预期使用: %ANSI_U32_U64%
当前使用: %RunningEXE%
预期权限: %预期权限%
当前权限: %当前权限%
程序即将退出。
)
MsgBox 0x40030, 运行状态与预期不一致, %ErrorMessage%
ExitApp
}
else
{
; 获取 AutoHotkey.exe 的路径
SplitPath, A_AhkPath, , Dir
if (RunAsAdmin=0)
{
; 强制普通权限运行
switch, A_IsCompiled
{
; %A_ScriptFullPath% 必须加引号,否则含空格的路径会被截断。%ScriptParameters% 必须不加引号,因为构造时已经加了。
; 工作目录不用单独指定,默认使用 A_WorkingDir 。
case, "1": Run, RunAs.exe /trustlevel:0x20000 "\"%A_ScriptFullPath%\" /restart %ScriptParameters%",, Hide
default: Run, RunAs.exe /trustlevel:0x20000 "\"%Dir%\%ANSI_U32_U64%\" /restart \"%A_ScriptFullPath%\" %ScriptParameters%",, Hide
}
}
else
{
; 强制管理员权限运行
switch, A_IsCompiled
{
; %A_ScriptFullPath% 必须加引号,否则含空格的路径会被截断。%ScriptParameters% 必须不加引号,因为构造时已经加了。
; 工作目录不用单独指定,默认使用 A_WorkingDir 。
case, "1": Run, *RunAs "%A_ScriptFullPath%" /restart %ScriptParameters%
default: Run, *RunAs "%Dir%\%ANSI_U32_U64%" /restart "%A_ScriptFullPath%" %ScriptParameters%
}
}
ExitApp
}
}
; 此脚本到此行结束

*/

#z::ExitApp


/*
#Persistent
; #NoTrayIcon
DetectHiddenWindows,On
SetTitleMatchMode,2
; =========================
DriveGet,DriveList,List
; loop,Parse,CDEFGHIJKLMNOPQRSTUVWXYZ
loop, Parse, DriveList
{
IfExist,%A_LoopField%:\filter-file-with-totalcmd
{
IfExist,D:\Prog\TotalCMD\TotalCMD64.exe
{
Run,D:\Prog\TotalCMD\TotalCMD64.exe %A_LoopField%:\filter-file-with-totalcmd
}
else
{
MsgBox,找不到文件 D:\Prog\TotalCMD\TotalCMD64.exe
ExitApp
; return
}
}
}
*/

 

下面隐藏内容为空白,这里放空白的隐藏内容便于大家支付积分,如不想支付积分可以忽略以下内容

 

[content_hide]

;
;
;   按快捷键 ` 显示或者隐藏 Total Commander 10.52 主窗口 2023-2-5 (快捷键 ` 即波浪键~,位于Esc键正下方,位于Tab键正上方)
;   Total Commander 10.52 简体中文增强版能够通过 拼音首字母序列字符串筛选过滤文件列表,
;   文件夹中的文件和文件名都可以自己整理整顿清理,
;   通过TC访问整理之后的文件夹可以快速高效的找到当前所需的文件
;   (文档、表格、图片、音乐、视频、源码、快捷方式、网址链接、收藏夹书签、Synology群晖NAS映射网络驱动器等等)
;

[/content_hide]

 

 

 

 

;  --- 压缩打包  (升级更新补丁包)-------------------------------------------------------

REM  D:\Prog\_一键打包成exe\一键打包成exe.bat
REM  此批处理脚本文件最后编辑日期  2022年9月23日
REM  D-Prog-SS-.exe中的SS 是 Silent Setup  的简写,表示静默安装                                                                                                       

if exist "C:\Program Files (x86)\WinRAR\WinRAR.exe" (
"C:\Program Files (x86)\WinRAR\WinRAR.exe" a -ag__YYYY.MM.DD_HH-MM-SS -iiconico.ico -m5 -r -sfx -z自解压脚本命令.txt D-Prog-SS-.exe ..\*.*
)else (
"C:\Program Files\WinRAR\WinRAR.exe" a -ag__YYYY.MM.DD_HH-MM-SS -iiconico.ico -m5 -r -sfx -z自解压脚本命令.txt D-Prog-SS-.exe ..\*.*
)





 

;下面的注释包含自解压脚本命令
;Path=解压缩路径
;Presetup=解压缩前运行
;Setup=解压缩后运行
;Silent=静默方式:1-隐藏全部      2-隐藏启动对话框      空着不设置-显示全部
;Overwrite=覆盖方式:1-覆盖全部文件      2-跳过已存在的文件      空着不设置-覆盖前询问
;请选择正确的图标并保存正确的配置文件

Path=D:\Prog\Update-TC
Setup=D:\Prog\Update-TC\Update-TC.bat
Silent=2
Overwrite=1

 

del /F /Q "%Temp%\Update7zlist.txt"
dir /b %~dp0\*.7z >"%Temp%\Update7zlist.txt"
if exist "%Temp%\Update7zlist.txt" (
	for /f  "usebackq" %%a in  ("%Temp%\Update7zlist.txt") do (
		%~dp07-Zip\7z x %~dp0%%a -aoa -oD:\ -r -y 
start D:\Prog\TotalCMD\TC_~.exe
start %~dp0MsgBox
exit
)
)
)
)

 

MsgBox,0,请按波浪键 ~,请按波浪键 ~,5
ExitApp

 

REM 搜索并运行批处理脚本文件的批处理脚本文件

for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
if exist %%i:\filter-file-with-totalcmd\Update-TC\Update-TC.exe (
start %%i:\filter-file-with-totalcmd\Update-TC\Update-TC.exe
REM  set desk =""
REM  For /f "tokens=3,*" %%i in ('reg query "hkcu\software\microsoft\windows\currentversion\explorer\shell folders" /v "desktop"') do (set desk=%%i)
REM  Copy %0 %desk%
exit
)
)

 

建议使用 WinRAR 或者 7-Zip 的命令行工具和批处理脚本来压缩打包自解压安装包或升级更新补丁包。

 

Maye Lite 和 Total Commander 10.52 简体中文增强版的最大优点是支持按照 “拼音首字母”筛选文件和对筛选结果列表的自定义编辑(增添文件到筛选结果,从筛选结果删除文件)从而对筛选结果的完全把控,不重复文件,不缺失文件,确保找到的都是经过反复实地测试的易用好用的精品文件。

Maye Lite 和 Total Commander 10.52 简体中文增强版按照 “拼音首字母” 筛选的文件可以是保存在电脑本地硬盘、Synology群晖NAS网络映射驱动器、"SanDisk 闪迪 Extreme PRO E81 移动固态硬盘 4TB"、金属外壳和金属U盘帽子主控是IS903的CD-ROM虚拟光驱DIY量产U盘、映射网络驱动器的各种网盘云存储等等各种存储介质。

标签:exe,快捷键,Commander,ANSI,2023,Go,Total
From: https://www.cnblogs.com/delphixx/p/17099381.html

相关文章

  • 2023年,还能从哪里把元宇宙搞起来?
    文|智能相对论作者|沈浪元宇宙这把火,从2022继续烧到了2023。目前来看,资本市场对扎克伯格的元宇宙故事依旧抱以希望。2月1日美股收盘,Meta涨2.79%,报收153.12美元/股,盘后股......
  • 2023牛客寒假算法基础集训营5 A-L
    比赛链接A题解知识点:前缀和,二分。找到小于等于\(x\)的最后一个物品,往前取\(k\)个即可,用前缀和查询。时间复杂度\(O(n+q\logn)\)空间复杂度\(O(n)\)代码#i......
  • 2023西湖论剑
    2023西湖论剑NodeMagicalLoginflag分为两部分flag1可以通过Flag1Controller函数获得functionFlag1Controller(req,res){try{if(req.cookies.user==......
  • TypeDB Forces 2023 (Div. 1 + Div. 2, Rated, Prizes!) (B,C,D)
    TypeDBForces2023(Div.1+Div.2,Rated,Prizes!)(B,C,D)BB这道题的大意是给你一个数\(n\),我们可以把这个\(n\),变成\(x_1^{y_1}*x_2^{y_2}......x_j^{y_j......
  • 强大的word插件,让工作更高效:不坑盒子 2023版
    不坑盒子简介很多朋友在工作过程中需要对Word文档进行编辑处理,如果想让Word排版更有效率可以试试小编带来的这款不坑盒子软件,这是一个非常好用的插件工具,专门应用在Word文......
  • 2023无死角java学习必备知识点有哪些?
    前奏与工具:学习路线梳理➾JDK工具➾JDK新特性➾IDEA工具基础语言:java基础➾设计模式➾数据结构与算法数据库与JDBC:MySQL➾JDBCWEB基础:Javaweb(HTML/CSS/JS/Tomcat......
  • 报表生成器 FastReport .Net 用户指南 2023(三):配置Bands
    FastReport.Net是一款全功能的WindowsForms、ASP.NET和MVC报表分析解决方案,使用FastReport.NET可以创建独立于应用程序的.NET报表,同时FastReport.Net支持中文、英语等14......
  • 20230207 物料关联车型报表 问题记录
    1.写sql的时候,主次没分清楚,应该是从marc和t001w表中查数据,剩下的字段再从其他的表中查,但是我直接是把lips和这两张表内连接到一块了,然后遇到lips表中没有的数据,就直接没数......
  • C语言学生综合管理系统[2023-02-07]
    C语言学生综合管理系统[2023-02-07]学生综合管理系统在VisualStudio开启平台下使用C语言通过控制台应用程序实现一个简单的《学生综合管理系统》,该系统由学生信息管......
  • HGAME_2023_WEB_WP_WEEK3
    PingToTheHost很明显的rce,简单测试一下发现空格,cat,;被办,且执行无回显,空格用${IFS},%09,$IFS$9等等来绕过,我们利用dnslog将执行结果外带出来,这里使用的是http://ceye.io/......