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

Вниз

ExtractAssociatedIcon под XP   Найти похожие ветки 

 
_Ed_ ©   (2002-12-04 06:44) [0]

Уважаемые Мастера!
Кто нибудь может подсказать, почему API-фукция
ExtractAssociatedIcon прекрасно работает под Win98,
но под XP выдаёт нулевой хендл?
______________________________________________________
Доп. сведения: икону запускающего exe-шника извлекает,
всё остальное - нет... :((

Заранее благодарен, Сердюк Э.С.


 
Song ©   (2002-12-04 08:28) [1]

Ошибка в 17-ой строке.


 
_Ed_ ©   (2002-12-04 12:58) [2]

извиняюсь за назойливость, но 17-я строка чего, ShellAPI.pas?
В ней объявление начала интерфейса:

interface

или дело в shell32.dll, где эта функция зашита?
Пожалуйста, можно подробнее
(что бы можно было исправить глюк)...


 
_Ed_ ©   (2002-12-04 14:22) [3]

Song <song@kmtn.ru>:

> когда говорят "Ошибка в 17-ой строке", имеют ввиду "покажи
> код. Без кода
> невозможно тебе помочь". Эта идиома ещё из фидо

прости ламера :)

привожу код (по памяти, т.к. пишу с работы)


... SomeBtn.OnClick(Sender : TObject)
var icon : TIcon;
i : integer;
begin
icon := TIcon.Create;
i := 0; // пробовал и 1 - d 98 c i:=0 работает
// файл anyfile существует и в 98 из него икона тянется!
icon.Handle := ExtractAssociatedIcon(
HInstance,
PChar("c:\AnyPath\anyfile.anyextention"), i );
// не помню точно порядок следования параметров в
// DrawIcon, но кажется так:
DrawIcon (MainForm.Canvas.Handle, 10, 10, icon.Handle);
icon.Free;
end;


так вот, под XP это всё работает, только если в качестве файла передать PChar(Application.Name);

е ещё: я протрахался пол ночи, пробовал разные варианты. Понимая что filename - это указатель и строка может измениться после вызова ExtractAssociatedIcon, я резервировал буфер и передавал указатель на него, но всё это фигня, т.к. этот код работает под 98...

Может у меня с тачкой или с делфями глюк? просто это очень странно. Буду очень благодарен за посильную помощь!

С уважением, Сердюк Э.С.


 
Song ©   (2002-12-04 14:26) [4]

Тебе было в падлу моё мыло из ответа вытащить?!!


 
Song ©   (2002-12-04 14:28) [5]

i должно быть не меньше единицы



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
3-62401
MikeFlat
2002-12-26 01:27
2003.01.20
Как общаться с Blob полем


1-62633
Johnny
2003-01-09 15:32
2003.01.20
Совсем простой вопрос


3-62344
alxx
2002-12-27 13:33
2003.01.20
Invalid Request BLR


6-62681
Ocean
2002-11-20 14:49
2003.01.20
Русский текст из html-формы


1-62537
diww
2003-01-08 18:23
2003.01.20
Ввод в Edit только цифр