Lazarus, windres, ikonka

Odpowiedz Nowy wątek
2006-10-27 18:19

Rejestracja: 17 lat temu

Ostatnio: 8 lat temu

0

Stworzyłem sobie plik zasobów w windresie, który zawiera m.in. zasób typu ICON o nazwie AppIcon (domyślna nazwa ikony aplikacji). W rzeczywistości ikona ta, to dwie ikonki, dla rozmiarów 32 i 16px^2. Wszystko się ładnie kompiluje, linkuje, w explorerze windowsa aplikacja ma ikonkę, na pasku zadań też, ale w żaden sposób nie mogę wczytać tej ikony z zasobów. Nie działa ani LoadIcon, ani LoadImage, ani wczytywanie przy pomocy LoadResource, błąd zwracany przez GetLastError, to "Nie można odnaleźć zasobu", pomimo tego, że np. ReseXplorer go znajduje. Inne zasoby dają się wczytywać.
Czy może ktoś z was spotkał się z takim problemem? Zna ktoś może przyczynę/rozwiązanie?

Z góry dziękuje za pomoc.

Pozostało 580 znaków

2006-10-27 19:11

Rejestracja: 16 lat temu

Ostatnio: 10 lat temu

0

Pokaż, jak wywołujesz LoadIcon.


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-10-28 09:08

Rejestracja: 17 lat temu

Ostatnio: 8 lat temu

0

Po prostu:

LoadIcon(hInstance, 'AppIcon');
//albo:
LoadImage(hInstance, 'AppIcon', IMAGE_ICON, 16, 16, 0);

Ale w ogóle, przy FindResource też nie chce znaleźć tego zasobu...

Hmm... Jak zmieniłem nazwę zasobu na liczbową, to przy wywołaniu LoadIcon(hInstance, MAKEINTRESOURCE(ID_ICON)); dla odmiany GetLastError zwraca błąd "Nieprawidłowe dojście". ;]

Pozostało 580 znaków

2006-10-28 11:06

Rejestracja: 16 lat temu

Ostatnio: 10 lat temu

0

Główna ikonka nazywa się MainIcon, a nie AppIcon.


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-10-30 09:47

Rejestracja: 17 lat temu

Ostatnio: 8 lat temu

0

Dla potomnych (problemów :p):
Sprawa dziwna, ale problem rozwiązany. Nie wiem, dlaczego wcześniej to nie działało, ale po ściągnięciu nowszego windresa i przekompilowaniu lazarusa, wszystko zaczeło działać jak należy.

Pozostało 580 znaków

Odpowiedz

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