기본 콘텐츠로 건너뛰기

gsjava 윈도우 바탕화면 레지스트리로 변경하기

 

#include <winreg.h>


파일명
마이 컴퓨터 \HKEY_CURRENT_USER\Control Panel\desktop\Wallpaper
 
표시방법
마이 컴퓨터 \HKEY_CURRENT_USER\Control Panel\desktop\TileWallpaper


void SetWallPaper(LPCTSTR pszFileName, int nTile)
{

HKEY hKey;
static char tile[2];
long lRet;

tile[0]='0'+nTile;
tile[1]='\0';

lRet = ::RegOpenKeyEx(HKEY_CURRENT_USER, "Control Panel\\desktop", 0, KEY_WRITE | KEY_READ, &hKey);
::RegSetValueEx(hKey, "TileWallpaper", 0, REG_SZ, (const unsigned char *) tile, 1);
::RegCloseKey(hKey);
::SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, (void *) pszFileName, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);

}
 

  설  명~

 

lRet = ::RegOpenKeyEx(HKEY_CURRENT_USER, "Control Panel\\desktop",0, KEY_WRITE|KEY_READ, &hKey);


레지스트리의 위치키값을 가져옵니다.(상세설명은 CPU정보얻기에서 참고하세여)

 

::RegSetValueEx(hKey, "TileWallpaper", 0, REG_SZ, (const unsigned char *) tile, 1);
::RegCloseKey(hKey);

 

바탕화면의 표시 방법(center/tile)을 제어 하기 위한 부분입니다. Windows의 레지스트리를 직접 조작해 실현합니다. hKey값은 닫아줍니다.

 

::SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, (void *) pszFileName, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);

 

   바탕화면의 파일명을 설정합니다. pszFileName에 바탕화면의 파일명을 줍니다. SPIF_SENDWINICHANGE는, 바탕화면등의 시스템에 관한 정보를 갱신했다고 하는 메세지를 각 어플리케이션에 발신하기 위해서고, SPIF_UPDATEINIFILE는 레지스트리에 벽지 파일명을 기록 하기 위한 것입니다.(Win31에서는 WIN.INI에 기록되게 되어 있던 것이, Win95/98에서는 레지스트리에 저장됩니다.)


댓글

이 블로그의 인기 게시물

UltraEdit Professional Version 18.20.0.1014 라이센스 키 넣기

Step 1: unpack rar archive      Step 2: run the setup   Step 3: Use the given keygen to activate    Add the line   127.0.0.1 licensing.ultraedit.com         to your %WINDOWS%\system32\drivers\etc\hosts file                 Enter any data for license-id and password (license-id must be a         number)                 Choose Offline activation and generate corresponding activation         codes for your user codes   Step 4: Enjoy and Support Developers, Buy It, They Deserved It!

gsjava WeGuardia™ SSLplus 특징(퓨쳐시스템 => 퓨쳐텍정보통신으로 이관)

☎ 문의 :  010-3240-0041 김성은 소장 01.   웹기반   인터페이스   제공 ……. –  웹기반   인터관리   및   사용   편리성을   제공 ……. –  실시간 터널수, 실시간 위반 사용자 등   복잡   정교한   정보   표시를   구현 02.   사용자를   위한   다양한   클라이언트   제공 ……. –  윈도우 , IOS,MAC, 안드로이드   및   리눅스   클라이언트   제공 ……. –  항시   암호화된   네트워크   연결성 ,  보안성   및   단말  Compliance  등  NAC  기능 03.   사용자   친화적   앱   목록 ……. – OS 별 앱 목록을 등록후 사용 가능 ……. –  사용자는   접속   정보   기억   불필요 ,  접속   후 ,  앱   목록에서   원하는   앱을   선택하여   클릭 ……. –  기업   필수   앱   배포   가능 04.   효율적인  VPN Tunneling ……. – Non Split Tunneling 과  Split Tunneling 을   지원 ,  업무   트래픽과   일반   인터넷   트래픽   분리   처리   가능 ……. – WeGuardia™SSLplus  보안설정을 ...