Вопрос
Надо программно менять обои на рабочем столе. С реестром разобрался (проблем нет), но это мало, чтобы обои поменялись надо что-то типа обновить обои (как кнопка в свойствах экрана применить). Сделать говорят надо так:
"вызвать что-то вроде SystemParametersInfo
(SPI_SETDESKWALLPAPER, 0, NULL, SPIF_SENDWININICHANGE);
см. msdn по этой функции."
Но мне это ни чего не говорит:-( Может ли мне кто-нибудь кинуть эксешничек который делает команду «обновить» или можно код на С++ (есть и немного могу пользоваться Borland C++ Compiler 5.5)
Ответ
Собственно, ответ уже есть в твоем вопросе :) Надо просто вызвать указанную функцию.
Обновить рабочий стол:
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
SystemParametersInfo(SPI_SETDESKWALLPAPER,0,NULL,SPIF_SENDWININICHANGE);
return 0;
}
Или сразу поменять обои:
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
TCHAR Wallpaper[] = «путь к картинке»;
SystemParametersInfo(SPI_SETDESKWALLPAPER,0,Wallpaper,SPIF_SENDWININICHANGE)
;
return 0;
Из конференции Expert_FAQ
Copyright 2000-2004 Сообщество Чайников
Контактная информация