Вот код для получения пути к рабочему столу в Windows Vista.
import pythoncom
import win32com.client
pythoncom.CoInitialize()
shell = win32com.client.Dispatch("WScript.Shell")
desktop_path = shell.SpecialFolders("Desktop")
Код работает нормально, когда я пробовал использовать интерпретатор Python, но не работает, когда я выполняю тот же код из скрипта Python, который работает как служба Windows. Функция возвращает путь к рабочему столу в виде пустой строки.
Есть идеи, что здесь не так? Есть ли другая альтернатива для получения пути к рабочему столу, когда скрипт python запускается как служба Windows?