使用Python修改Windows快捷方式
如何使用 Python 更改 Windows 快捷方式?
例如从:
H:\My Music\some_file.mp3
到:
D:\Users\Myself\My Music\some_file.mp3
How do you change a Windows shortcut using Python?
e.g. from:
H:\My Music\some_file.mp3
to:
D:\Users\Myself\My Music\some_file.mp3
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这是使用 Winshell 库在 Python 中执行此操作的另一种更合适的方法: 使用Python创建Windows快捷方式。在您的情况下,代码将如下所示:
应删除或重写现有快捷方式。如果您需要它来批量处理快捷方式文件,那么我认为有某种方法可以从现有快捷方式读取路径,但没有找到它。
Here's another, more appropriate way to do this in Python with Winshell library: Using Python to create Windows shortcuts. In your case the code will look like:
Existing shortcut should be deleted or rewritten. If you need it for batch processing of shortcut files then I think there's some way to read paths from existing shortcuts, but didn't managed to find it.
乔纳森的解决方案非常有效。这是我实现此功能时生成的有用函数。只需传入快捷方式文件的名称(例如“Mozilla Firefox.lnk”,无需指定整个文件路径)和新的快捷方式目标,即可对其进行修改。
唯一的依赖项是 pywin32 库。另请注意,可以在快捷方式目标中指定选项和参数。要实现,只需调用:
本示例将桌面上名为“快捷方式测试”的快捷方式的目标设置为在硬盘驱动器根目录(C:)中打开文件管理器的快捷方式。
Jonathan's solution works perfectly. This is the useful function I produced implementing this. Simply pass in the name of the shortcut file (for example "Mozilla Firefox.lnk", it is unnecessary to specify the entire filepath), and the new shortcut destination, and it will be modified.
The only dependency is the pywin32 library. Also note that one is able to specify options and arguments in their shortcut destination. To implement, just call:
This example will set the destination of a shortcut on your desktop called "shortcut test" to a shortcut that opens up the file manager in the root directory of the hard drive (C:).
此处详细介绍了另一种方法
使用快捷方式更新示例。您可以通过
shortcut.GetPath()
修改它,然后使用shortcut.SetPath()
方法来设置它。Yet another method is detailed here
Use the shortcut update example. You can
shortcut.GetPath()
, modify it and then useshortcut.SetPath()
method to set it.以下是如何使用 Windows 脚本宿主创建快捷方式:http://msdn.microsoft。 com/en-us/library/fywyxt64
尝试将其从 Python 写入文件并动态运行。
Here is how you can create a shortcut using Windows script host: http://msdn.microsoft.com/en-us/library/fywyxt64
Try to write it to file from Python and run it dynamically.
前面的答案是完全有效的,但是为了真正完成它们,我添加了批量编辑的代码,因为我想您可能有很多链接需要编辑。
如果您想一次编辑多个链接,请使用此功能:
The previous answer are perfectly valid however to really complete them I added the code for bulk editing because I suppose you might have a lots of link to edit.
use this if you want to edit many links at once: