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

Вниз

Помогите, плз, найти ошибку   Найти похожие ветки 

 
ДимкаН   (2002-06-03 15:16) [0]

procedure TForm1.AddNewFile(F: TSearchRec);
var Icon: hIcon;
IconIndex: word;
YIcon: TIcon;
NewIconIndex: integer;
begin
with ListView1.Items.Add, F do
begin
IconIndex:=0;
ShowMessage(Name);
Icon:=ExtractAssociatedIcon(HInstance, PChar(Name), IconIndex);

YIcon:=TIcon.Create;
YIcon.ReleaseHandle;
YIcon.Handle:=Icon;
imagelist1.AddIcon(YIcon);
NewIconIndex := imagelist1.AddIcon(YIcon);
ImageIndex := NewIconIndex;
.......

Во время выполнения ExtractAssociatedIcon выдается "Программа выполнила недопустимую операцию и будет закрыта" :(


 
Song ©   (2002-06-03 15:18) [1]

IconIndex:=1


 
ДимкаН   (2002-06-03 15:21) [2]

Не, не помогает :(.


 
Игорь Шевченко ©   (2002-06-03 15:28) [3]

Что такое Name ?


 
Игорь Шевченко ©   (2002-06-03 15:31) [4]

Все понятно.

Надо так:

var
tmp : array[0..MAX_PATH] of char;
....
StrCopy(tmp, F.Name);
ExtractAssociatedIcon(hInstance, tmp, IconIndex);
...

Функция ExtractAssociatedIcon меняет содержимое строки, в которой указан путь до файла.


 
ДимкаН   (2002-06-03 15:32) [5]

Name - это имя файла в записи F: TSearchRec.


 
ДимкаН   (2002-06-03 15:37) [6]

Спасибо, помогло! :)


 
Song ©   (2002-06-03 15:38) [7]

TSearchRec.Name - это имя файла без пути насколько мне не изменяет память, поэтому ExtractAssociatedIcon() не находит файла.

ЗЫ: ImageIndex:=0; тоже была бы ошибкой.


 
ДимкаН   (2002-06-03 16:01) [8]

Вообще-то да. Вылетать перестала, стала даже иконки рисовать, но для незарегистрированных приложений. Руками прописал зарегистрированное - помогло. Будем думать, как путь вставить :). В TSearchName он, как ни обидно, в явном виде не входит...


 
Song ©   (2002-06-03 17:27) [9]

:) А как поиск-то делаешь ? Покажи кусок с FindFirst/FindNext



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
4-35524
Magic
2002-05-26 08:08
2002.08.12
Как поместить кнопки и рисунки на овальную форму?


4-35504
tararasyk
2002-06-05 18:41
2002.08.12
Запуск taskmgr.exe и блокировка в Win2000


14-35421
FLIZ
2002-07-12 17:15
2002.08.12
Кто в каком возрасте из вас женился(если таковое было?) :-))


3-35167
Spooky
2002-07-18 14:46
2002.08.12
Альтернатива Database Desktop


3-35190
Dmitrey
2002-07-23 11:54
2002.08.12
Свой потомок TDataSet