Вниз
Скачать: CL | DM;

Проблема с функцией StringToWideChar   Найти похожие ветки 

 
ЛенаК   (2002-05-21 09:54) [0]

Есть следующий код:
var
AD: IActiveDesktop;
name : PWideChar;
MasFile : array of string;

// пытаюсь поменять обои на рабочем столе, взяв файл с рисунком для этого из массива

setlength(Masfile,1);
MasFile[0]:="ris.bmp";
name:=StringToWideChar(MasFile[0],name,1);

AD:=CreateComObject(CLSID_ActiveDesktop) as IActiveDesktop;
AD.SetWallpaper(name,0);
AD.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
Никаких сообщений не выдаётся, но AD.SetWallpaper(name,0); не срабатывает. Если написать так: AD.SetWallpaper("ris.bmp",0); то всё работает. Я подозреваю, что неправильно указываю какие-то параметры в StringToWideChar и она возвращает неправильное имя.
Как это побороть? Спасибо.


 
Shaman_Naydak ©   (2002-05-21 14:27) [1]

name:=StringToWideChar(MasFile[0],name, 1);
Последнюю единичку видишь? Ты один символ копируешь
Объяви Name: WideString и просто присвой
А то у тебя еще и AccessViolation всплывет.. так как ты память не выделил



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-95319
olookin
2002-07-15 16:07
2002.07.29
Перечисление констант


1-95298
firsor
2002-07-17 09:51
2002.07.29
Как создать непрямоугольную форму


1-95432
Гас
2002-07-16 10:01
2002.07.29
Работа с DLL. Метод Assign не хочет выполняться.. :(


1-95324
Andy BitOff
2002-07-18 00:38
2002.07.29
Как выровнять текст по краям


14-95514
KPY
2002-07-02 14:26
2002.07.29
Какая то лажа прицепилась к интернету




   Наверх