ребят как поменять обои через python
есть такая проблема, есть папка с программой нужно сделать, что бы по кнопки менялся фон, если пишу
ctypes.windll.user32.SystemParametersInfoW(20, 0, "C:/Users/Dmitriy/Desktop/fon/win.jpg" , 0)
то все работает, но нужно сделать так ctypes.windll.user32.SystemParametersInfoW(20, 0, "fon/win.jpg" , 0)
не работает.
нужно именно так сделать, или как то по-другому, что бы работал на разных компах
Ответы (1 шт):
Автор решения: Namerek
→ Ссылка
А Вы уверены, что папка Desktop на всех компах находится в домашней папке пользователя?
Если да, то попробуйте так:
import ctypes
from pathlib import Path
desktop = Path().home().joinpath('Desktop')
ctypes.windll.user32.SystemParametersInfoW(20, 0, desktop.joinpath('fon/win.jpg').as_posix(), 0)
# ^^^^^^^^^^^
UPD
Послето того, как выяснилось, что файл с изображением находится в папке со скриптом
# Если файл изображения в той же папке что и скрипт то `.joinpath('fon')` не нужно
img_dir = Path(__file__).parent.joinpath('fon')
ctypes.windll.user32.SystemParametersInfoW(20, 0, img_dir.joinpath('win.jpg').as_posix(), 0)