Hallo!
Habe folgende Codes von Swissdelphicenter ausprobiert:
http://www.swissdelphicenter.ch/de/showcode.php?id=75
doch bei allen gibt es das selbe Problem. Unzwar bleibt der
Desktop nach dem Wechseln einfach schwarz, anstatt das entsprechende
Bild angezeigt wird.
Code:
procedure SetWallpaper(sWallPaperBMPPath: string; bTile: Boolean);
var
reg: TRegIniFile;
begin
reg := TRegIniFile.Create('Control Panel\Desktop');
try
with reg do
begin
WriteString('', 'Wallpaper', sWallPaperBMPPath);
WriteString('', 'TileWallpaper', IntToStr(Ord(bTile)));
end;
finally
reg.Free;
end;
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil, SPIF_SENDWININICHANGE);
end;
procedure SetPaper(Filename: String);
var sWallPaperBMPPath: string;
begin
sWallPaperBMPPath := Filename;
if not SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, Pointer(sWallPaperBMPPath),
SPIF_SENDWININICHANGE) then
ShowMessage('Succesful.')
else
ShowMessage('Failed!');
end;
Jemand ne Idee, warum das passiert? Kann es daran liegen, dass die Wallpaper keine Bitmaps
sind?