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

Вниз

StringToWideChar   Найти похожие ветки 

 
kotbazilio ©   (2007-08-07 15:04) [0]

ActiveDesktop := CreateComObject(CLSID_ActiveDesktop)  as IActiveDesktop;
 ActiveDesktop.SetWallpaper("c:\wallpaper.html", 0);
 ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);

такой код работает

 p: pwidechar;
 s: string;

 s := GetCurrentDir+"\wallpaper.html";
 p := StringToWideChar(s,p,255);
 ActiveDesktop := CreateComObject(CLSID_ActiveDesktop)    as IActiveDesktop;
 ActiveDesktop.SetWallpaper(p, 0);
 ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
а такой вызывает ошибку. Где копать?


 
Плохиш ©   (2007-08-07 15:07) [1]


> а такой вызывает ошибку. Где копать?

Копать в описании ошибки.


 
kotbazilio ©   (2007-08-07 15:09) [2]

Access violation at adress... Process stop


 
Плохиш ©   (2007-08-07 15:50) [3]

Под переменную p надо выделить память, о чём в справке и написано.


 
Anatoly Podgoretsky ©   (2007-08-07 16:25) [4]

> kotbazilio  (07.08.2007 15:04:00)  [0]

Чем тебя не устраивает WideString, все равно с указателями работать не умеешь, пусть уж Дельфи за тебя работает.


 
Котик Б   (2007-08-07 16:58) [5]


var
 ad: IActiveDesktop;
 fn: TFileName;
 fd: string;
 hr: HRESULT;
 buff: array[byte]of WideChar;
begin
 fn := "wallpaper.html";
 fd := "c:\"; //GetCurrentDir();
 fn := IncludeTrailingPathDelimiter(fd) + fn;
 if SysUtils.FileExists(fn)
 then begin
   ad := CreateComObject(CLSID_ActiveDesktop) as IActiveDesktop;
   hr := ad.SetWallpaper(StringToWideChar(fn, @buff, SizeOf(buff)), 0);
   if hr = S_OK
   then hr := ad.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
 end;
end;



 
MetalFan ©   (2007-08-07 17:03) [6]


> Котик Б   (07.08.07 16:58) [5]

абсолютно бессмысленный изврат.
смотри
> Anatoly Podgoretsky ©   (07.08.07 16:25) [4]

дело говорит ;)


 
Котик Б   (2007-08-07 17:04) [7]


> MetalFan ©   (07.08.07 17:03) [6]
> > Котик Б   (07.08.07 16:58) [5]
> абсолютно бессмысленный изврат.


Чего треплешься - покажи свой вариант - не стесняйся... тут все свои ;)



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

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

Наверх




Память: 0.48 MB
Время: 0.025 c
2-1186656444
Kolan
2007-08-09 14:47
2007.09.02
У ComboBox на фрейме не случается MeasurmentComboBoxDrawItem


10-1136807222
yanker
2006-01-09 14:47
2007.09.02
управление через OLE


3-1178536064
Xmen
2007-05-07 15:07
2007.09.02
Пополнения автоинкрементного поля


2-1186490490
1c_user
2007-08-07 16:41
2007.09.02
ГдЕ оШиБкА??, если она есть вообще...


3-1178781838
alexey_mas
2007-05-10 11:23
2007.09.02
передача процедуры в процедуре