‹неизвестно›.TargetPath не может быть установлен

Я пытаюсь написать сценарий, который можно развернуть и удаленно запустить на нескольких целевых компьютерах, в результате чего существующий ярлык будет заменен на тот, который запускает точно такую ​​же программу, но с высоким приоритетом. Вот мой сценарий:

import os, winshell
from win32com.client import Dispatch
from comtypes.client import CreateObject
# from comtypes.gen import IWshRuntimeLibrary

desktop = winshell.desktop()
path = os.path.join(desktop, 'Test Short.lnk')

target = r'\%HOMEDRIVE%\\Apps\\Ellie Mae\\Encompass\\AppLauncher.exe'
wDir = r'\%HOMEDRIVE%\\Apps\\Ellie Mae\\Encompass'
icon = r'\%SystemRoot%\\Installer\\{3E9C4FBE-4E6C-4389-A4B3-4AE027D0BF2E}\\Icon3E9C4FBE2.ico'

shell = Dispatch('WScript.Shell')
shortcut = shell.CreateShortCut(path)
shortcut.TargetPath = target
shortcut.WorkingDirectory = wDir
shortcut.IconLocation = icon
shortcut.save()

Я столкнулся с ошибкой атрибута, как показано ниже:

AttributeError: Property '<unknown>.TargetPath' can not be set.

Для справки: здесь где я получил большую часть своего кода.

Я попытался найти ответ и наткнулся на эту тему. Однако, следуя принятому предложению, получается:

ImportError: cannot import name IWshRuntimeLibrary

Меня смущает то, почему я не могу установить свойство TargetPath для начала. Как это часто бывает, кажется, что OP из связанной темы и я - единственные два человека, сообщающие об этой проблеме. Кто-нибудь знает, почему это может происходить и что я могу сделать, чтобы это исправить?


person Inagnikai    schedule 15.08.2016    source источник
comment
Я столкнулся с той же проблемой.   -  person Philipp    schedule 14.05.2017