Я искал, как использовать IActiveDesktop для смены обоев, и собрал следующий код из различных источников.
sys.coinit_flags = 0
pythoncom.CoInitialize()
iad = pythoncom.CoCreateInstance(shell.CLSID_ActiveDesktop, None, pythoncom.CLSCTX_INPROC_SERVER, shell.IID_IActiveDesktop)
iad.SetWallpaper(bmpPath)
iad.ApplyChanges(7)
Я получаю следующую ошибку:
pywintypes.com_error: (-2147467259, 'Unspecified error', None, None)
Поскольку я не знаком с тем, как использовать pythoncom, я действительно не знаю, что я делаю здесь неправильно.
Обратите внимание, что я не хочу использовать SystemParametersInfo, поскольку он не имеет эффекта затухания, который, по-видимому, имеет IActiveDesktop.