Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: CL | DM;

Вниз

Баги при использования com-интерфейса   Найти похожие ветки 

 
zero-g ©   (2005-08-14 09:13) [0]

Доброго времени суток уважаемые коллеги!

У меня такая проблеммка.
Использую в своей программе, Wallpaper v.2.3, com-интерфейс для смены фона рабочего стола.
файл программы
http://alexshad.pisem.net/file/wallp.zip

процедура смены фона

uses ComObj,ShlObj;
....
procedure SetWallpaper(sWallpaperBMPPath : String; bTile : byte);
const
CLSID_ActiveDesktop: TGUID = "{75048700-EF1F-11D0-9888- 006097DEACF9}";
var
ActiveDesktop: IActiveDesktop;
t_ : WideString;
wp : _tagWALLPAPEROPT;
begin
t_ := sWallpaperBMPPath;
try
 ActiveDesktop := CreateComObject(CLSID_ActiveDesktop) as IActiveDesktop;
except
 showmessage("Error CREATE COM OBJECT");
end;
wp.dwSize := sizeof(_tagWALLPAPEROPT);
if bTile = 3 then //по растянуть
wp.dwStyle := WPSTYLE_STRETCH;
if bTile = 2 then //по замостить
 wp.dwStyle := WPSTYLE_MAX;
if bTile = 1 then //по центру
 wp.dwStyle := WPSTYLE_CENTER;
try
 ActiveDesktop.SetWallpaperOptions(wp,0);
 ActiveDesktop.SetWallpaper(PWideChar(t_),0);
 ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
except
 showmessage("Error SET & APPLAY");
end;
ActiveDesktop := NIL;
end;

Пример использования  

...
SetWallpaper("C:\mywallpaper.jpg",3);
...

Ну так вот, сама процедура работает нормально.
приложение работает на всех осях нормально.
но тут мне один из ее пользователей сказал о баге, о котором я вообще бы не подумал.

Дело в следующем.
Юзер использует OutLook Expesse для приема почты, и во время когда происходит смена фона рабочего стола, у него увеличивается в размерах ряд с  кнопками : Сохранить, Вставить, Ответить....   Кнопки становятся больше и не помещаются на экране.

Я тоже пользуюсь OutLook Expesse, но как то не обращал на это внимания, но попробывал протестить данный вариан, и убедился что это так.

Ну так вот. В самой прогремме сторонние приложения вообще не используются, ни процессы их ни что либо другое, поэтому я и грешу на com-интерфейс....

Кто нить с таким сталкивался, или у кого нить есть какие нить идеи??? Кроме переписки движка по установки через реестр ))) Так как это не актуально )))

В общем люди, я без понятия из-за чего такая фигня происходит. Очень нуждаюсь в умных советах.

Зарание спасибо.


 
zero-g ©   (2005-08-14 09:17) [1]

Да и кстате,
данная фигня происходит если стоит режим установки "Растянуть"
Если стоит режим "По центру", то все нормально.


 
Ученик   (2005-08-14 12:55) [2]

Может быть убрать AD_APPLY_FORCE


 
zero-g ©   (2005-08-14 13:16) [3]

Да, спасибо.
Убрал AD_APPLY_FORCE, теперь с OutLook Expesse никаких проблем )))

Еще раз спасибо :)

Теперь осталось тока на всех виндозных осях протестить, посмотреть, будет ли работать смена фона без глюков :)



Страницы: 1 вся ветка

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
14-1127049069
Piter
2005-09-18 17:11
2005.10.09
Програма для просмотра свойств WMV видео


1-1126797235
Alex Kryuchkov
2005-09-15 19:13
2005.10.09
Программное создание макроса в Экселе


3-1125279600
Булат
2005-08-29 05:40
2005.10.09
delphi база данных двойники


4-1123774955
NeoMaster
2005-08-11 19:42
2005.10.09
Снижение загрузки процессора


14-1127173550
mm0
2005-09-20 03:45
2005.10.09
как зделать post запрос без curl