步骤
- 使用模块
win32gui
-
win32gui.GetForegroundWindow()
可以获取最上层活动窗口的句柄
- 判断获取的句柄是否是文件夹
文件夹的类型名字是'CabinetWClass'
。
通过win32gui.GetClassName(window) == 'CabinetWClass'
可以获取的句柄是否是文件夹
- 获取窗口的路径
通过win32gui.GetWindowText(window)
可以获取窗口的标题,而这标题一般是窗口的路径。
有时标题不会显示窗口的绝对路径,而是只显示最后一级目录名,可通过如下设置,来显示完整的路径名:
python脚本
import win32gui
import os
import os.path
import shutil
SW_HIDE = 0
SW_SHOW = 5
SW_MINIMIZE = 6
SW_SHOWMINNOACTIVE = 7
def get_path(path):
for i in range(500):
# while True:
window = win32gui.GetForegroundWindow()
if (window != 0):
if (win32gui.GetClassName(window) == 'CabinetWClass'):
path.append(win32gui.GetWindowText(window))
break
else:
# 使用python.exe执行python脚本的时候,会弹出控制台窗口,如下代码能把控制台置入后台
if (win32gui.GetClassName(window) == 'ConsoleWindowClass'):
win32gui.ShowWindow(window, SW_MINIMIZE)
网友评论