Используя приведенный ниже код, я могу создавать ярлыки.
Проблема заключается в том, что я пытаюсь создать ярлык, который приводит к « Program Files ». Получившийся ярлык всегда будет иметь в качестве цели значение « Program Files (x86) ».
import os
import pythoncom
from win32com.shell import shell
shortcut = pythoncom.CoCreateInstance(
shell.CLSID_ShellLink,
None,
pythoncom.CLSCTX_INPROC_SERVER,
shell.IID_IShellLink
)
path = "C:\Program Files\ConEmu\ConEmu64.exe"
shortcut.SetPath(path)
shortcut.SetIconLocation(path, 0)
persist_file = shortcut.QueryInterface(pythoncom.IID_IPersistFile)
persist_file.Save(os.path.join(os.getcwd(), "conEmu.lnk"), 0))
Даже если я задаю путь к: C: \ Program Files \ ConEmu \ ConEmu64.exe
По какой-то причине ярлык имеет: C: \ Program Files (x86) \ ConEmu \ ConEmu64.exe
Я также пробовал:
shell = Dispatch('WScript.Shell')
shortcut = shell.CreateShortCut(path)
shortcut.Targetpath = target
Тот же результат.