使用Python更改Windows快捷方式.lnk文件的图标

5
我想在创建后更改.lnk文件的图标。这是目前我的主要代码:
import win32com.client

shell = win32com.client.Dispatch("WScript.Shell")
shortcut = shell.CreateShortCut("shortcut.lnk")
shortcut.Targetpath = "C:\\Users\Benjie\AppData\Local\Programs\Python\Python36\python.exe"
shortcut.save()

这将创建一个带有Python图标的快捷方式,但如果可能的话,我想将其更改为不同图标,例如另一个.exe文件的图标。

我希望尽可能使用Windows API库之一,但如果不可能的话,外部库也可以。

谢谢!

1个回答

9

好的,在查阅了这个帮助下的几个小时研究后,我找到了我要找的东西:shortcut.IconLocation。这将把快捷方式的图标设置为来自.exe、.dll、.icl或.ico文件中的图标。例如:

import win32com.client

shell = win32com.client.Dispatch("WScript.Shell")
shortcut = shell.CreateShortcut("shortcut.lnk")
shortcut.TargetPath = "C:\\Users\Benjie\AppData\Local\Programs\Python\Python36\python.exe"
shortcut.IconLocation = "C:\path_to_.exe,1"
shortcut.Save()

图标路径是指文件的路径,后跟一个逗号和文件中图标的编号。如果您创建快捷方式并在其属性中更改其图标,然后浏览文件,您可以查看文件的图标。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接