Pobieranie ikonki z innego programu

0

Witam, jestem tu nowy i nie we wszystkim się orientuje dlatego proszę o wyrozumiałość.

Robię taki mały programik, który ma mi (i jak będzie działał to innym) ułatwić pracę na kompie. Ten programik to po prostu ToolBar.
Niby jest ich sporo ale chciałem mieć własny. Prawie wszystko co w nim do tej pory zrobiłem działa poprawnie. Denerwuje mnie tylko jeden szczegół jakim jest pobieranie ikonki z innych programów. Absolutnie nie wiem jak to zrobić, od czego zacząć ani na czym skończyć. Przeszukałem tą stronę pod tym kątem i nic potrzebnego nie znalazłem :/ . Więc pytam czy ktoś z Was wie jak za pomocą programu napisanego w Delphi 7 można wyciągnąć ikonkę z dowolnego programu i wyświetlić ją w komponencie TImage? Z góry dzięki za odpowiedzi.

0

Ściągnij sobie bibliotekę RX która ma w demo program RXexplorer. Który wyciąga z exe/dll ikonki bitmapy i resztę.

1

Terlecki: ten kod na http://www.latiumsoftware.com/en/delphi/00014.php działa ok. Sprawdziłem.

1

A jeżeli chodzi tylko o ikony programów (nie trzeba ikon skojarzonych np. z plikami gif, jpg, doc) to krócej:

//do uses ShellApi
function GetIconFromFile(AFileName: TFileName): HIcon;
begin
  result:= 0;
  if not FileExists(AFileName) then exit;
  if ExtractIcon(0, PAnsiChar(AFileName), UINT(-1)) > 0 then
    result:= ExtractIcon(0, PAnsiChar(AFileName), 0);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  Image1.Picture.Icon.Handle:= GetIconFromFile('C:\Windows\system32\calc.exe');
end;
0

Dzięki wam wszystkim, działa :).
_13th_Dragon, szukałem tej biblioteki w Google ale na nic pasującego nie trafiłem, może nie takie frazy wpisywałem. Jak masz jakiś link do niej albo coś w ten deseń to był bym wdzięczny. Przetestuje ją.

1 użytkowników online, w tym zalogowanych: 0, gości: 1