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

时间:2017-11-18 18:20:42

标签: python windows icons lnk

我想在创建.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 librarys,但如果这不可行,外部库也可以使用。

由于

1 个答案:

答案 0 :(得分:2)

好的,在this的帮助下经过几个小时的研究后,我找到了我想要的东西: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()

图标路径是文件的路径,带有逗号和文件中的图标编号。如果创建快捷方式并在其属性中更改其图标,则可以看到文件的图标,然后浏览该文件。