Форум: "Основная";
Текущий архив: 2003.06.19;
Скачать: [xml.tar.bz2];
ВнизИзображение на Десктопе Найти похожие ветки
← →
namor (2003-06-03 14:14) [0]Мастера, подскажите плз...
Задача тривиальная - поместить изображение на рабочий стол...
Делаю так
path := flList.FileName;
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, PChar( Path ), SPIF_SENDWININICHANGE);
Тока изображение на рабочем столе не появляется(даже после обновления). Но вот старое убирается.
Может что не так делаю...
<Path> реально содержит строку пути. Проверял при отладке.
← →
clickmaker (2003-06-03 14:44) [1]Файл нужного формата? Проверь IsFileExists(Path), узнай код ошибки
if SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, PChar( Path ), SPIF_SENDWININICHANGE) = 0 then
SysErrorMessage(GetLastError);
← →
namor (2003-06-03 15:08) [2]
> clickmaker ©
Файл jpg; То что файл создан сомнений нет(он по этому же пути в имайдж загружается), SysErrorMessage выдаёт "Операция успешно завершена"
← →
clickmaker (2003-06-03 15:19) [3]А если его явно через виндозные настройки десктопа подсунуть, появится ?
← →
DVM (2003-06-03 15:28) [4]
> namor ©
файл jpg требует включенного ActiveDesktop.
← →
namor (2003-06-03 15:32) [5]Пробовал я через реестр подсовывать...
Та же история. Пока в св-ва экрана не зайдёшь и применить не нажмёшь, ничего не покажет
← →
sergiu (2003-06-03 15:35) [6]procedure SetWallpaper(const fileName:string;tile:boolean);
var
Reg: TRegIniFile;
begin
Reg:=TRegIniFile.Create("Control Panel");
Reg.WriteString("desktop", "Wallpaper", fileName);
if tile then
Reg.WriteString("desktop", "TileWallpaper", "1")
else
Reg.WriteString("desktop", "TileWallpaper", "0");
Reg.Free;
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil,SPIF_SENDWININICHANGE);
end;
← →
namor (2003-06-03 15:36) [7]Сори всем что стока мучил...
Даже стыдно стало. Туплю немного. Действительно БМПшки ставит без проблем.
To ALL: Как програмно включить/выключить ActiveDeskTop?
← →
namor (2003-06-03 15:41) [8]
> sergiu
Я же говорю, пробовал через реестр...
К тому же народ уважаю... Сначала ФАК прочту а потом тока вопрос задаю... Так что я это уже видел.
Но всё равно спасибо...
← →
sergiu (2003-06-03 15:46) [9]Да не за что, тем более что не помогло :o)
← →
DVM (2003-06-03 15:51) [10]
> To ALL: Как програмно включить/выключить ActiveDeskTop?
Как проверить, включён ли ActiveDesktop.
function IsActiveDeskTopOn: Boolean;
var
h: hWnd;
begin
h := FindWindow("Progman", nil);
h := FindWindowEx(h, 0,
"SHELLDLL_DefView", nil);
h := FindWindowEx(h, 0,
"Internet Explorer_Server", nil);
Result := h <> 0;
end;
Отключение Active Desktop
Следующий параметр полностью отключает использование Active Desktop.
Раздел HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\
Policies\Explorer
Параметр NoActiveDesktop
Тип REG_DWORD
Значение 0 - отключено, 1 - включено
← →
namor (2003-06-05 10:38) [11]
> DVM © (03.06.03 15:51)
Что-то не нашёл я такого параметра в реестре...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.06.19;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.009 c