Nie wiem czy uzyskam pozytywną odpowiedź, ale może miał ktoś wcześniej z tym styczność. Zaciekawiło mnie to jak w windowsie ustawia się tapety. Wiem już, że jeśli tapeta nie jest w BMP to jest ona kowertowana i zapisywana już w BMP tutaj:
C:\Documents and Settings\Użytkownik\Ustawienia lokalne\Dane aplikacji\Microsoft\Wallpaper1.bmp
(przynajmniej w XP)
Przy przeglądaniu zdjeć w 'Podglądzie obrazów i faksów systemu Windows' widzę też, że jest funkcja 'Ustaw jako tło pulpitu'. Względem tej nazwy przeszukałem rejestr i znalazłem ten wpis tutaj:
HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache\@shell32.dll,-31289
Nie wiem tylko jak mógłbym wywołać funkcję w c++, ustawiającą tło pulpitu (przekazując moją nazwę tapety). Bo funkcję dla ustawiania tapet BMP czyli:
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, Nazwa, SPIF_UPDATEINIFILE || SPIF_SENDWININICHANGE);
znam - chodzi mi jednak o ustawianie różnego rodzaju plików graficznych (bmp, jpg, gif, png, itp) bez konwersji (zostawię to Windowsowi :P)...
Jeżeli nie ma takiej możliwości proszę o krótkie skwitowanie mojego postu, a będe wiedział, że poszukiwania na google są z góry przewidziane na niepowodzenie.