Poslao: 29 Avg 2006 19:31
|
offline
- beli0135

- Executor
- Pridružio: 03 Jan 2005
- Poruke: 2990
- Gde živiš: Beograd
|
- function TProcessThread.GetFileFromList: string;
- var
- cs:TRTLCriticalSection;
- begin
- (*
- InitCriticalSection(cs);
- {$IFDEF windows}
- EnterCriticalSection(cs.LockCount);
- {$ELSE}
- EnterCriticalSection(cs.__m_count);
- {$ENDIF}
- *)
- result:=FileList.strings[0];
- FileList.Delete(0);
-
- (*
- {$IFDEF windows}
- LeaveCriticalSection(cs.LockCount);
- {$ELSE}
- LeaveCriticalSection(cs.__m_count);
- {$ENDIF}
- DoneCriticalsection(cs);
- *)
- end;
ovo sto je komentovano, ne kompajlira zbog Linux dela : EnterCriticalSection(cs.__m_count);
jel zna neko kako se radi sa CriticalSection u lazarusu?
Dopuna: 29 Avg 2006 15:31
Zapravo, kad se odkomentuje Windows deo, ni to ne radi
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 29 Avg 2006 19:56
|
offline
- Srki_82

- Moderator foruma
- Srđan Tot
- Am I evil? I am man, yes I am.
- Pridružio: 12 Jul 2005
- Poruke: 2483
- Gde živiš: Ljubljana
|
Koliko znam treba da pise:
- Critical: TRTLCriticalSection;
-
- InitializeCriticalSection(Critical);
- EnterCriticalSection(Critical);
- LeaveCriticalSection(Critical);
- DeleteCriticalSection(Critical);
Ovaj kod bi trebalo da radi na svim platformama.
|
|
|
|
Poslao: 29 Avg 2006 20:02
|
offline
- bobby

- Administrator
- Pridružio: 04 Sep 2003
- Poruke: 24135
- Gde živiš: Wien
|
[Link mogu videti samo ulogovani korisnici]
[Link mogu videti samo ulogovani korisnici]
|
|
|
|
Poslao: 29 Avg 2006 20:31
|
offline
- beli0135

- Executor
- Pridružio: 03 Jan 2005
- Poruke: 2990
- Gde živiš: Beograd
|
@Srki
unProcess.pas(82,35) Error: call by var parameters have to match exactly: Got "TRTLCriticalSection" expected "LongInt"
@Bobby
Primer sa wikija nema to, primer iz drugog linka kreira gresku odozgo
|
|
|
|
Poslao: 29 Avg 2006 21:32
|
offline
- Srki_82

- Moderator foruma
- Srđan Tot
- Am I evil? I am man, yes I am.
- Pridružio: 12 Jul 2005
- Poruke: 2483
- Gde živiš: Ljubljana
|
Ok... evo ispravke koja radi (program se kompajlira i radi kada se pokrene). Napravio sam nov projekat, postavio dugmence i u OnClick event napisao ovo:
- procedure TForm1.Button1Click(Sender: TObject);
- var
- Critical: TRTLCriticalSection;
- begin
- InitCriticalSection(Critical);
- EnterCriticalSection(Critical);
- LeaveCriticalSection(Critical);
- DoneCriticalsection(Critical);
- end;
|
|
|
|
|
Poslao: 29 Avg 2006 21:55
|
offline
- Srki_82

- Moderator foruma
- Srđan Tot
- Am I evil? I am man, yes I am.
- Pridružio: 12 Jul 2005
- Poruke: 2483
- Gde živiš: Ljubljana
|
Hajde kopiraj definicije funkcija InitCriticalSection, EnterCriticalSection, LeaveCriticalSection i DoneCriticalsection iz Lazarusa pa da vidimo... koristim 0.9.16 verziju Lazarusa.
|
|
|
|
Poslao: 30 Avg 2006 04:19
|
offline
- beli0135

- Executor
- Pridružio: 03 Jan 2005
- Poruke: 2990
- Gde živiš: Beograd
|
I ja koristim istu verziju, koju sam za windoze skinuo pre 4 dana sa sajta. Posto sam reinstalirao suse, nemam linux verziju, ali mi se apsolutno isto deshavalo.
|
|
|
|
Poslao: 30 Avg 2006 20:01
|
offline
- Srki_82

- Moderator foruma
- Srđan Tot
- Am I evil? I am man, yes I am.
- Pridružio: 12 Jul 2005
- Poruke: 2483
- Gde živiš: Ljubljana
|
Hajde kopiraj definicije tih funkcija iz source... sigurno ima razlike kad nece da se iskompajlira.
|
|
|
|
Poslao: 30 Avg 2006 22:07
|
offline
- beli0135

- Executor
- Pridružio: 03 Jan 2005
- Poruke: 2990
- Gde živiš: Beograd
|
Reshio sam to.
- uses SyncObjs...
-
- function TProcessThread.GetFileFromList: string;
- var
- Critical:TCriticalSection;
- begin
- critical:=TCriticalSection.Create;
- try
- Critical.Acquire;
- result:=FileList.strings[0];
- FileList.Delete(0);
- Critical.Release;
- finally
- critical.Free;
- end;
- end;
Drugi problem... jel zna neko kako da resizujem JPG?
- jpg := TJPEGImage.create;
- try
- jpg.LoadFromFile(infile);
- // LAZARUS BUG u sledecoj
- bmp.canvas.StretchDraw(Rect(0,0,AWidth,AHeight),jpg);
- finally
- jpg.Free;
- end;
- .....
StrechDraw je toliko bagiran da izlazi skroz zeznuta slika.
Jel zna neko kako da napravim resize?!
|
|
|
|