[Wyzwanie] Wyciaganie z proga ikonek, ich nazw itp

0
  1. Jak wyciagnąć ile w resourcach programu jest przechowywanych ikonek(i to nie oddzielnie ile jest ikonek 16x16, 32x32, 48x48, tylko ile jest ikonek)?
  2. Teraz trudniejsze: jak wyciągnąc ich nazwy(wszystkie maja swoje ID[word], a wszystkie oprócz jednej maja nazwę[string])
  3. W Stringtable są podpisy do ikonek, każda ikonka która ma nazwę (oprócz MAINICON) ma podpis. Te podpisy mają taka sama nazwe jak ikonka do której są przypisane.

Dobra, teraz wyswietlic to tak:

[code]
Liczba ikonek:


| [Ikonka] | Nazwa | Podpis | <-to jest list view
| duuuzo stufu(tyle ile ikonek, z nazwami i podpisami, tyle wpisów)... |

[/code]

A to wszystko w Delphi (moze być w DCB6, jakoś sobie poradzę z tłumaczeniem, a jak nie to powiem).

0

Nie bede ci tlumaczyl jak sie wyciąga ogolnie zasoby z pliku, tylko wytlumacze ci na jakiej zasqadzie sa one umieszczone w zasobach.
Najpierw należy znaleŹĆ grupy ikon (RT_GROUP_ICON), których nazwy okreslają daną nazwe grupy ikon (jedna ikona z róznymi kolorami czy rozmiarami). Z tad odnajdujesz wskaznik do informacji o rodzajach ikon i ich nazwach w zasobach (typ RT_ICON), które przypadają na daną grupe(moze zawiłe, ale prawdziwe). Kazda osobna ikona ma nazwe tylko jako liczba.
I to wszystko. Dokładniej masz w plikach pomocy (np. win32.hlp)

0

ech, wiem... Problem polega na tym, że to co ty piszesz to juz wiem. Nie odpowiedziałeś na pytanie, a o istnieniu helpa w delphi wiem od około 6 lat (czyli mniej wiecej odkąd dowiedziałem sie o istnieniu delphi)

0

na razie na pierwsze:ExtractIcon z ostatnim parametrem -1 zwraca ilosc ikon w zasobach
Na drugie puzniej

0

Chciałbym zauwazyć, że oprócz helpa Delphi ma też bardzo ciekawy zbiór przykładów w katalogu Demos, m.in. programik ResXplor...

0

Tak tylko ten programik nie czyta zasobów uzywajac standardowych funkcji tylko twaorzy plik obrazu (CreateFileMapping) i tam sprawdza sekcje pliku, czy jest .rsrc. I jesli tak to przeskakuje do miejsca tego (oczywiscie przeliczjac adres wirtualny na fizyczny) i tam sprawdza po kolei ilosc zasobow. Powiem tak, pisalem kiedys program do odczytywania zasobow i doszedlem do tego, ze potrafilem zczytac i zasoby z plikow res i exe (dll itp). Zapis zasobow w pliku exe jest bardziej skomplikowany niz w res, bo zapisany jest w sposob drzewa, jak wpisy dla kontrolki treeview. I trzeba w tym przypadku nauczyc sie zaglebiac w drzewiasta strukture zapisanych zasobow, a na poczatek to poznac budowe pliku exe 32 bitowego (PE).

0

Dzięki za wątpliwa pomoc, sam sobie ze wszystkim poradziłem... efekt będzie widoczny w NSP4 (if uda mi sie okończyć operacje na otwartym rejestrze)

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