Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Linkovanje resourcea u Delphi 7 -- problem

[es] :: Pascal / Delphi / Kylix :: Linkovanje resourcea u Delphi 7 -- problem

[ Pregleda: 296 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

stameni
Ivan Stamenković

Član broj: 6739
Poruke: 550



+9 Profil

icon Linkovanje resourcea u Delphi 7 -- problem01.02.2025. u 14:03 - pre 2 meseca
Napravio sam dve sličice i smestio ih u RC. Taj RC sam kompajlirao u RES. U source sam stavio
Code:
{$R fajl.res}
Potom sam u OnClick stavio sledeće:

Code:

begin
  Image1.Picture.Bitmap.LoadFromResourceName(Hinstance, 'ID_BITMAP1');
  Application.ProcessMessages;
  Sleep(1000);
  Image1.Picture.Bitmap.LoadFromResourceName(Hinstance, 'ID_BITMAP2');
  Application.ProcessMessages;
  Sleep(1000);
end;


Kompajliranje prođe kako treba, ali u izvršavanju izbacuje exception na prvom LoadFromResourceName (tipa da ne može da nađe resurs).

Program je veoma jednostavan, i trebalo bi da izbacuje dve sličice preko Image komponente. Projekat ide uz poruku (bez EXE-a).

Nikako da ukapiram šta mu fali.
Prikačeni fajlovi
 
Odgovor na temu

milnen
Nis

Član broj: 73950
Poruke: 333
*.netnet.rs.



+6 Profil

icon Re: Linkovanje resourcea u Delphi 7 -- problem01.02.2025. u 18:57 - pre 2 meseca
Primetio sam jedan problem, ali i kada se on ispravi, opet neće da radi kod mene.
Naime, u rc fajlu piše da su imena bitmapa IDB_BITMAP1 i 2, a u programu ID_BITMAP1 i 2.
U novijim Delphijima postoji neki resource manager, u koji se ubace resursi, dodele se imena i tako radi kod mene.

Inače, kod mene hoće da radi tvoj program ako se resursi pozivaju po ID-u, a ne po imenu. Tačnije, radi sa:
Code:
Image1.Picture.Bitmap.LoadFromResourceID(Hinstance, 1);
Image1.Picture.Bitmap.LoadFromResourceID(Hinstance, 2);
 
Odgovor na temu

stameni
Ivan Stamenković

Član broj: 6739
Poruke: 550



+9 Profil

icon Re: Linkovanje resourcea u Delphi 7 -- problem02.02.2025. u 13:01 - pre 2 meseca
Citat:
milnen: Primetio sam jedan problem, ali i kada se on ispravi, opet neće da radi kod mene.
Naime, u rc fajlu piše da su imena bitmapa IDB_BITMAP1 i 2, a u programu ID_BITMAP1 i 2.


Eksperimentisao sam sa promenjenim IDB_BITMAP1 u ID_BITMAP1, i obrnuto, ali ista priča: iskompajlira se i pukne u run-timeu.

Citat:
U novijim Delphijima postoji neki resource manager, u koji se ubace resursi, dodele se imena i tako radi kod mene.


Probao sam i tako, ali jednako puca.

Najpre sam radio sa resource editorom iz Borland C++, da bih napravio RC i da bih taj RC kompajlirao u RES. Potom sam koristio Image Editor iz Delphija 7, koji ne ume da napravi RC, ali zato odmah generiše RES (a, koliko sam primetio, može i da učita taj RES), tako da se preskače jedan korak u celoj priči, ali ne radi.

Citat:
Inače, kod mene hoće da radi tvoj program ako se resursi pozivaju po ID-u, a ne po imenu. Tačnije, radi sa:
Code:
Image1.Picture.Bitmap.LoadFromResourceID(Hinstance, 1);
Image1.Picture.Bitmap.LoadFromResourceID(Hinstance, 2);


E, ovo već neće ni da se kompajlira Naime, drugi argument mora da bude String; a ako mu ubaciš IntToStr(1) i IntToStr(2), ponovo zavitlava kao na početku priče.
 
Odgovor na temu

stameni
Ivan Stamenković

Član broj: 6739
Poruke: 550



+9 Profil

icon Re: Linkovanje resourcea u Delphi 7 -- problem02.02.2025. u 13:06 - pre 2 meseca
P. S. Ispravka, radi (i to vrlo lepo): prevideo sam da si stavio funkciju LoadFromResourceID umesto LoadFromResourceName.

Muči me ovaj problem duže vreme, i svašta sam pokušavao da ga rešim. Čini mi se i da sam probao sa LoadFromResourceID, pa da nije radilo. Ipak, na ovaj način radi.

Hvala mnogo
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2743



+99 Profil

icon Re: Linkovanje resourcea u Delphi 7 -- problem03.02.2025. u 00:49 - pre 2 meseca
> Najpre sam radio sa resource editorom iz Borland C++, da bih napravio RC i da bih taj RC kompajlirao u RES.
> Potom sam koristio Image Editor iz Delphija 7, koji ne ume da napravi RC, ali zato odmah generiše RES (a, koliko sam primetio,

Meni je najlakse bilo to preko bat fajla i komande linije npr.

Fajl Data.rc

FILE1 RCDATA "..\Uputstvo\ReadMe.txt"
imgs32 RCDATA "imgs32.png"
imgsMain RCDATA "imgsMain.png"

Fajl ResCompile.bat (koji pozoves jednom kad se slike ili fajl promeni)
brcc32.exe -l409 Data.rc




 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Linkovanje resourcea u Delphi 7 -- problem

[ Pregleda: 296 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.