我想打开一个在 Windows 上选择了指定项目的文件夹。我查阅了 Windows Shell Reference 并找到了适合这项工作的函数:SHOpenFolderAndSelectItems。
但是,我找不到如何在 Python 中使用它的示例。有人知道我该怎么做吗?
我还有一个额外的要求:如果该文件夹已经打开,请不要再次打开它,只需激活它并选择文件。
我想打开一个在 Windows 上选择了指定项目的文件夹。我查阅了 Windows Shell Reference 并找到了适合这项工作的函数:SHOpenFolderAndSelectItems。
但是,我找不到如何在 Python 中使用它的示例。有人知道我该怎么做吗?
我还有一个额外的要求:如果该文件夹已经打开,请不要再次打开它,只需激活它并选择文件。
使用 PyWin32 你可以做这样的事情,默认情况下它应该只是激活并选择已经打开的文件:
from win32com.shell import shell, shellcon
import win32api
folder = win32api.GetTempPath()
folder_pidl=shell.SHILCreateFromPath(folder,0)[0]
desktop = shell.SHGetDesktopFolder()
shell_folder = desktop.BindToObject(folder_pidl, None, shell.IID_IShellFolder)
items = [item for item in shell_folder][:5]
## print (items)
shell.SHOpenFolderAndSelectItems(folder_pidl, items, 0)
http://mail.python.org/pipermail/python-win32/2012-September/012531.html
也许您可以尝试使用 subprocess.Popen 通过 Python 运行 shell 命令。查看此线程以获取更多信息:如何使用 subprocess popen Python