; f12:: FindTarget() return FindTarget(WinTitle := "A") { if Target := GetTargetPath(WinTitle) Run, Explorer /select`,%Target% else MsgBox, 定位失败 } GetTargetPath(WinTitle := "A") { if WinActive("ahk_class XLMAIN") Return, ComObjActive("excel.application").ActiveWorkbook.FullName else if WinActive("ahk_class OpusApp") Return, ComObjActive("Word.Application").ActiveDocument.FullName else { WinGet pid, PID, %WinTitle% wmi := ComObjGet("winmgmts:") queryEnum := wmi.ExecQuery("" . "Select * from Win32_Process where ProcessId=" . pid) ._NewEnum() if !queryEnum[process] Return, False Tooltip, % cmd := process.CommandLine StringReplace, cmd, cmd, " ", |, All StringReplace, cmd, cmd, "%A_Space%, |, All StringReplace, cmd, cmd, %A_Space%", |, All StringReplace, cmd, cmd, ",, All StringSplit, cmd_, cmd, | Target := FileExist(cmd_2) ? cmd_2 : cmd_1 if !InStr(Target, "") WinGet, Target, ProcessPath, %WinTitle% Return, Target } }