python 윈도 우즈 벽지 정기 교체 기능 실현

5273 단어 pythonwindows벽지
본 고 는 windows 벽지 의 python 프로그램 을 정기 적 으로 바 꾸 고 간단 하 며 자신 이 쓰 고 있 는 것 으로 완벽 한 벽지 전환 솔 루 션 을 제공 하지 않 습 니 다.
pywin 32 확장 프로그램 설치
python 2.7 을 설치 한 후 관리자 의 방식 으로 cmd 를 실행 하고 python 의 scripts 디 렉 터 리 에 들 어 갑 니 다.제 것 은...
C:\Python27\Scripts
cd /d C:\Python27\Scripts
그리고 입력:python pywin 32post install.py-install(환경 변수 PATH 에 python.exe 디 렉 터 리 가 설정 되 어 있 는 지 확인)

C:\Python27\Scripts>python pywin32_postinstall.py -install
Copied pythoncom27.dll to C:\Windows\SysWOW64\pythoncom27.dll
Copied pythoncomloader27.dll to C:\Windows\SysWOW64\pythoncomloader27.dll
Copied pywintypes27.dll to C:\Windows\SysWOW64\pywintypes27.dll
Registered: Python.Interpreter
Registered: Python.Dictionary
Registered: Python
-> Software\Python\PythonCore\2.7\Help[None]=None
-> Software\Python\PythonCore\2.7\Help\Pythonwin Reference[None]='C:\\Python27\\
Lib\\site-packages\\PyWin32.chm'
Pythonwin has been registered in context menu
Shortcut for Pythonwin created
Shortcut to documentation created
The pywin32 extensions were successfully installed.
이렇게 해서 pywin 32 는 설 치 를 마 쳤 습 니 다.
PIL 설치
PIL 은 Python Image Lib 입 니 다.
인터넷 에서 PIL 다운로드:http://www.pythonware.com/products/pil/。제 가 다운로드 한 것 은 PIL-1.1.7.win 32-py 2.7.exe 입 니 다.더 블 클릭 으로 실행 하면 됩 니 다.
주:pip 를 사용 하여 설치 하려 면 명령 행 에 pip 가 아니 라 pip 2.7 을 입력 하 십시오.다음 과 같 습 니 다.
C:\Python27\Scripts>pip2.7 install
You must give at least one requirement to install (see "pip help install")
관건 함수
아래 함수 도움말 정 보 는 PyWin 32.chm 에서 볼 수 있 습 니 다.
win32gui.SystemParametersInfo

SystemParametersInfo(Action, Param, WinIni)
Queries or sets system-wide parameters. This function can also update the user profile while setting a parameter.
Parametersundefined
Action : int
 System parameter to query or set, one of the SPI_GET* or SPI_SET* constants
Param=None : object
 depends on action to be taken
WinIni=0 : int
 Flags specifying whether change should be permanent, and if all windows should be notified of change. Combination of SPIF_UPDATEINIFILE, SPIF_SENDCHANGE, SPIF_SENDWININICHANGE
win32api.RegOpenKeyEx

PyHKEY = RegOpenKeyEx(key, subKey, reserved , sam )
Opens the specified key.
Parametersundefined
key : PyHKEY/int
 An already open key, or any one of the following win32con constants:
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
subKey : string
 The name of a key that this method opens. This key must be a subkey of the key identified by the key parameter. If key is one of the predefined keys, subKey may be None. In that case, the handle returned is the same key handle passed in to the function.
reserved=0 : int
 Reserved. Must be zero.
sam=KEY_READ : int
 Specifies an access mask that describes the desired security access for the new key. This parameter can be a combination of the following win32con constants:
KEY_ALL_ACCESS
KEY_CREATE_LINK
KEY_CREATE_SUB_KEY
KEY_ENUMERATE_SUB_KEYS
KEY_EXECUTE
KEY_NOTIFY
KEY_QUERY_VALUE
KEY_READ
KEY_SET_VALUE
KEY_WRITE
순서
다음은 coding:
set.py:

import Image
import win32api, win32gui, win32con

def setWallPaper(pic):
 # open register
 regKey = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE)
 win32api.RegSetValueEx(regKey,"WallpaperStyle", 0, win32con.REG_SZ, "2")
 win32api.RegSetValueEx(regKey, "TileWallpaper", 0, win32con.REG_SZ, "0")
 # refresh screen
 win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,pic, win32con.SPIF_SENDWININICHANGE)

setWallPaper('E:\\backPics\\character5.jpg')
효과:

다음 에 우 리 는 한 시간 간격 으로 벽 지 를 바 꾸 도록 설정 합 니 다.
내 갤러리 에는 5 장의 그림 만 있 기 때문에 그림 을 표시 하 는 표 지 는[1-5]에서 만 순환 할 수 있다.

import Image
import win32api, win32gui, win32con
import time

def setWallPaper(pic):
 # open register
 regKey = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE)
 win32api.RegSetValueEx(regKey,"WallpaperStyle", 0, win32con.REG_SZ, "2")
 win32api.RegSetValueEx(regKey, "TileWallpaper", 0, win32con.REG_SZ, "0")
 # refresh screen
 win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,pic, win32con.SPIF_SENDWININICHANGE)

g_times = 0
while True:
 g_times = g_times+1
 g_times = g_times%5
 picDir = 'E:\\backPics\\character'
 picDir = picDir+str(g_times+1)+'.jpg'
 setWallPaper(picDir)
 time.sleep(60*60)

이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기