进一步做了优化,添加了在vscode中运行约束,添加了matlab脚本识别,如果不是m脚本报错。我的命令行窗口在中间,添加了一个鼠标点击命令,保证命令行窗口激活。 ;————-vscode中的matlab脚本快速使用打开的matlab窗口运行 #IfWinActive, ahk_exe Code.exe ;只在vscode中起作用 ^!m:: Send, +!c ;复制文件完整路径 Sleep, 500 hyf_onekeyWindow(“D:MATLABR2021bbinmatlab.exe”,”SunAwtFrame”,”S”) WinMaximize,A ;窗口最大化,方便进行其他操作 Sleep, 500 temp=%Clipboard% StringLen, Length, temp ;整个文件字符串长度 ; MsgBox, The length of the string is %Length%. ; MsgBox % InStr(temp, “.m”) ; .m文件在的位置,如果是.m文件后面应该没有字母,两个数值相差1 mpos:=InStr(temp, “.m”) if ((Length-mpos)==1) { Clipboard=run(“%temp%”)`n MouseClick, Left, 900, 600 ;折腾乐半天也没有搞定根据控件激活窗口,这个左键点击是根据winspy获得的 Send, ^v } Else { MsgBox 不是matlab脚本! } Return #IfWinActive ;结束约束