Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Вопросы по ярлыкам на рабочем столе


Автор: Данкинг 15.3.2008, 19:28
Решил 2 вопроса объединить в одну тему. Итак, как можно:
1) Узнать число ярлыков на рабочем столе?
2) Задать координаты для того или иного ярлыка?

Автор: kemiisto 15.3.2008, 19:43
Цитата(Данкинг @  15.3.2008,  19:28 Найти цитируемый пост)
1) Узнать число ярлыков на рабочем столе?

Может просто подсчитать суммарное количество *.lnk в С:\Documents and Settings\User\Рабочий стол\ и C:\Documents and Settings\All Users\Рабочий стол\ ?

Цитата(Данкинг @  15.3.2008,  19:28 Найти цитируемый пост)
2) Задать координаты для того или иного ярлыка?

А такое вообще возможно?

Автор: THandle 15.3.2008, 19:44
1.

Код

function ListLinks(Dir: string) : integer;
var
  rSearchRec: TSearchRec;
begin
  result := 0;
  Dir := IncludeTrailingBackslash(Dir);
  if FindFirst(Dir + '*.*', faAnyFile, rSearchRec) = 0 then
    repeat
        if CompareText(ExtractFileExt(rSearchRec.Name) , '.lnk') = 0 then
          inc(result);
    until FindNext(rSearchRec) <> 0;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(IntToStr(ListLinks('C:\\Documents and Settings\THandle\Рабочий стол\')));
end;



На второй не буду отвечать по двум причинам:
1. Один топик - один вопрос

Автор: kemiisto 15.3.2008, 19:48
Вот нашел что-то по сабжу: http://www.delphisources.ru/pages/faq/base/set_desktop_links_pos.html 

Автор: Данкинг 15.3.2008, 20:37
Цитата(THandle @ 15.3.2008,  19:44)
На второй не буду отвечать по двум причинам:
1. Один топик - один вопрос

А вторая причина какая? smile Я просто не вижу смысла две похожих темы создавать. За процедуру спасибо, когда попробую - скажу.

Добавлено через 46 секунд
Цитата(kemiisto @ 15.3.2008,  19:48)
Вот нашел что-то по сабжу: http://www.delphisources.ru/pages/faq/base/set_desktop_links_pos.html

Так это и в Delphiworld есть, только я не понял, при чём там ListView и как вообще сиё юзать...

Автор: THandle 15.3.2008, 20:40
Цитата(Данкинг @  15.3.2008,  20:37 Найти цитируемый пост)
Так это и в Delphiworld есть, только я не понял, при чём там ListView и как вообще сиё юзать...

Так ведь рабочий стол это и есть ListViev.

Автор: Данкинг 15.3.2008, 20:43
Цитата(THandle @ 15.3.2008,  20:40)
Так ведь рабочий стол это и есть ListViev.

Значит, прямо так и юзать, как там написано, что ли. ОК, попробуем тоже.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)