问题描述
我正在尝试从Python中读取快捷方式( .lnk
)的目标文件/目录。有没有头痛的方法呢? 是我的头脑。
我不介意使用仅限Windows的API。
I'm trying to read the target file/directory of a shortcut (.lnk
) file from Python. Is there a headache-free way to do it? The .lnk spec [PDF] is way over my head.I don't mind using Windows-only APIs.
我的最终目标是找到(我的)视频 / code>文件夹在Windows XP和Vista。在XP上,默认情况下,它位于
%HOMEPATH%\My Documents\My视频
,而Vista上则为%HOMEPATH%\Videos
。但是,用户可以重新定位此文件夹。在这种情况下,%HOMEPATH%\Videos
文件夹不再存在,并被%HOMEPATH%\Videos.lnk
指向新的我的视频
文件夹。我想要它的绝对位置。
My ultimate goal is to find the "(My) Videos"
folder on Windows XP and Vista. On XP, by default, it's at %HOMEPATH%\My Documents\My Videos
, and on Vista it's %HOMEPATH%\Videos
. However, the user can relocate this folder. In the case, the %HOMEPATH%\Videos
folder ceases to exists and is replaced by %HOMEPATH%\Videos.lnk
which points to the new "My Videos"
folder. And I want its absolute location.
推荐答案
使用Python创建一个快捷方式(通过WSH) p>
Create a shortcut using Python (via WSH)
import sys
import win32com.client
shell = win32com.client.Dispatch("WScript.Shell")
shortcut = shell.CreateShortCut("t:\\test.lnk")
shortcut.Targetpath = "t:\\ftemp"
shortcut.save()
使用Python读取快捷方式的目标(通过WSH)
import sys
import win32com.client
shell = win32com.client.Dispatch("WScript.Shell")
shortcut = shell.CreateShortCut("t:\\test.lnk")
print(shortcut.Targetpath)
这篇关于在Python中读取.lnk文件的目标?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!