[ D2005 @ 26.06.2007. 11:00 ] @
Zanima me dal je netko ikad instalirao JCL i JVCL na D2005 Architect Trial i na koji je nacin to instalirao ako je uspio :)




poz
[ viking13 @ 26.06.2007. 12:53 ] @
Meni je ta instalacija prošla bez problema. Možda zato što imam lepu kutiju na kojoj piše Borland, sa 7 diskova unutra i nekim čudnim brojevima na nekom kartonu. :)

Nikad nisam probao da instaliram bilo šta na Trial verziju, ali me to ne sprečava da ne probam da ti pomognem.

Da li to čudo uopšte ima DCC32.EXE? Ovo pitam zato što znam da Turbo verzije nemaju DCC32.EXE. Ako nema, nije ni čudo što ne prolazi instalacija.

Imaš da skineš JVCL332SourceOnly.zip, pa onda lepo probaj da instaliraš ručno. Nemam sad vremena da vidim da li unutra imaš i JCL, pa ako nema prvo skini JCL-1.100.1.2646.zip.

Znači klasična instalacija. Otvoriš Delphi, pa otvoriš paket, pa compile, install i to.
[ Bojan Kopanja @ 26.06.2007. 14:40 ] @
Pa lepo ti pise da Evaluation verzija nije podrzana tako da ne verujem da ces uspeti tako da instaliras... Pokusaj ovu rucnu varijantu koja ti je predlozena, mada... Ko zna :D.

BTW mislim da nije problem do DCC32.EXE postose bez njega ne bi ni kompajlirao installer.
[ viking13 @ 26.06.2007. 15:07 ] @
Citat:
Bojan Kopanja
BTW mislim da nije problem do DCC32.EXE postose bez njega ne bi ni kompajlirao installer.


UPS!

To mi nije ni palo na pamet. :)
[ D2005 @ 26.06.2007. 15:28 ] @
Nemam DCC32.EXE .. aj neka mi ga netko okaci u attach ;)
instaler dolazi kompajliran u \bin direktoriju VCL-a i onda on preko dcc32.exe-a odnosno delphi command line kompajlera kompajlira same komponente i ugraduje ih u delphi IDE :)

Znaci treba mi taj dcc32.exe da instaliram JCL a onda cu JVCL rucno



[Ovu poruku je menjao D2005 dana 26.06.2007. u 18:31 GMT+1]
[ Srki_82 @ 26.06.2007. 21:37 ] @
Koliko znam, nemoguce je koristiti pakete kompajlirane jednom verzijom kompajlera u drugoj verziji. Ako tvoja verzija Delphia nema dcc32.exe, znaci da ima neki drugi kompajler koji je 100% drugaciji od dcc32.exe koji ce ti neko okaciti i, cak i ako se sve iskompajlira kako treba, neces moci da ucitas te pakete.

Deo teksta sa: http://delphi.about.com/od/objectpascalide/a/bpl_vs_dll_2.htm
Citat:
As you will see, a package is nothing more than a collection of units. All the DCU files (compiled units) contain version information. This is why we cannot use a unit compiled in Delphi 7 in a Delphi 2006 project unless we have the unit's source. When we change something in the interface part of the unit all the units listed in the uses clause need to be recompiled. The compiler checks the version information of DCU's and decides whether an unit has to be recompiled. You cannot provide a package written in Delphi 2006 to be used by an application written in Delphi 7. Any package that you provide for your application must be compiled using the same Delphi version used to compile the application.
[ Bojan Kopanja @ 26.06.2007. 22:21 ] @
Kod mene radi DCC32.exe iz Delphija 2005 na TurboDelphiju ;). To u sustini i jeste isti delphi, ali samo raskomadan tako da mozda moze i ovo da se odradi ako je u tome problem :).
[ viking13 @ 26.06.2007. 23:16 ] @
Citat:
Srki_82: Koliko znam, nemoguce je koristiti pakete kompajlirane jednom verzijom kompajlera u drugoj verziji. Ako tvoja verzija Delphia nema dcc32.exe, znaci da ima neki drugi kompajler koji je 100% drugaciji od dcc32.exe koji ce ti neko okaciti i, cak i ako se sve iskompajlira kako treba, neces moci da ucitas te pakete.


BEEEPP!!!!! WRONG!!!

Delphi 2007 može da koristi pakete iz Delphija 2006.

Opametili su se. KONAČNO!!!

A nisi u pravu ni za ovo drugo.

Trial verzija nema comand line compliler (dcc32), isto kao što ga nema ni Turbo Delphi. I ne postoji nikakav alternativni kompajler.

Kompajliranje može isključivo da vrši iz IDE-a.

Treba mu dcc32.exe iz full D2005 paketa. Što dođe ilegalno. :)
[ viking13 @ 26.06.2007. 23:28 ] @
Citat:
Bojan Kopanja: Kod mene radi DCC32.exe iz Delphija 2005 na TurboDelphiju ;). To u sustini i jeste isti delphi, ali samo raskomadan tako da mozda moze i ovo da se odradi ako je u tome problem :).


BEEEPP!!!!! WRONG!!! I tebi. :)

Turbo je D2006, a ne D2005.

To će raditi, ali je problem što taj DCC32 iz D2005, i ne zna da iskompajlira neke stvari koje ovaj iz D2006 zna.

Probaj da iskompajliraš record sa Class opeatorima sa tim.

Code:

  type 
    TComplex = record 
    private 
      Re, Im: Double; 
    public 
      class operator Implicit(const Value: Double): TComplex; 
      class operator Explicit(const Value: Double): TComplex; 
      ... 
    end; 


  class operator TComplex.Implicit(const Value: Double): TComplex; 
  begin 
    Writeln('Implicit'); 
    Result.Re := Value; 
    Result.Im := 0.0; 
  end; 


  class operator TComplex.Implicit(const Value: Double): TComplex; 
  begin 
    Writeln('Explicit'); 
    Result.Re := Value; 
    Result.Im := 0.0; 
  end; 


  ... 


  myComplex := 17.0; // calls operator Implicit 
  myComplex := TComplex(17.0); // calls operator Explicit 

[ schild @ 27.06.2007. 06:50 ] @
Citat:

Trial verzija nema comand line compliler (dcc32), isto kao što ga nema ni Turbo Delphi. I ne postoji nikakav alternativni kompajler.

BEEEPP!!!!!
Turbo Delphi 2006 ima dcc32, ali ga moraš sam skinuti sa sajta. Mislim da na to imaš pravo samo ako si kupio Pro verziju.
[ viking13 @ 27.06.2007. 09:51 ] @
Citat:
schild: BEEEPP!!!!!
Turbo Delphi 2006 ima dcc32, ali ga moraš sam skinuti sa sajta. Mislim da na to imaš pravo samo ako si kupio Pro verziju.


Naravno da moraš da kupiš PRO da bi ti dali da skineš DCC32.

Btw. to je isti onaj DCC32 iz D2006, koji dobiješ kad staviš sve updejte. :)
[ Srki_82 @ 27.06.2007. 10:06 ] @
Ooooo, nisam ni znao da bpl vise ne zavise od odredjene verzije kompajlera :) Od koje verzije su poceli da prave "univerzalne" bpl fajlove... od 2006 pa na dalje? Da li to znaci da su i dcu fajlovi univerzalni?
[ viking13 @ 27.06.2007. 11:32 ] @
Citat:
Srki_82: Ooooo, nisam ni znao da bpl vise ne zavise od odredjene verzije kompajlera :) Od koje verzije su poceli da prave "univerzalne" bpl fajlove... od 2006 pa na dalje? Da li to znaci da su i dcu fajlovi univerzalni?


Ako stvari gledaš iz tog ugla, onda si u pravu i možeš Delphi 2006 da smatraš prvim "univerzalnim".

Međutim, stvari stoje malko drugaičije.

Ključ je Delphi 2007, a ne Delphi 2006. :)

Delphi 2007 je prvi "non-breaking" release, što znači da ćeš moći da koristiš većinu D2006 komponenti u D2007, čak i ako nemaš source.

Članak na tu temu ćeš naći ovde:

http://blogs.codegear.com/abauer/archive/2007/02/24/32322.aspx

p.s. Zanimljivo je da paketi u D2007 imaju iste oznake kao oni u D2006, odnosno imaju sufix 100. Bez obzira na to većina autora su svoji paketima za D2007 dali sufix 110, a neki D2007.
[ Bojan Kopanja @ 27.06.2007. 12:04 ] @
Citat:
viking13: BEEEPP!!!!! WRONG!!! I tebi. :)

Turbo je D2006, a ne D2005.

To će raditi, ali je problem što taj DCC32 iz D2005, i ne zna da iskompajlira neke stvari koje ovaj iz D2006 zna.

Probaj da iskompajliraš record sa Class opeatorima sa tim.

Code:

  type 
    TComplex = record 
    private 
      Re, Im: Double; 
    public 
      class operator Implicit(const Value: Double): TComplex; 
      class operator Explicit(const Value: Double): TComplex; 
      ... 
    end; 


  class operator TComplex.Implicit(const Value: Double): TComplex; 
  begin 
    Writeln('Implicit'); 
    Result.Re := Value; 
    Result.Im := 0.0; 
  end; 


  class operator TComplex.Implicit(const Value: Double): TComplex; 
  begin 
    Writeln('Explicit'); 
    Result.Re := Value; 
    Result.Im := 0.0; 
  end; 


  ... 


  myComplex := 17.0; // calls operator Implicit 
  myComplex := TComplex(17.0); // calls operator Explicit 



Sorry, lapsus, znam da je TD u stvari D2006... U stvari DCC32 mi i jeste iz D2006 :). Bedak :D...
[ Srki_82 @ 27.06.2007. 13:32 ] @
Eeee, to je bas lepo znati. Bilo bi jos lepse znati i da ce svaka buduca verzija biti u stanju da radi sa starijim verzijama dcu fajlova :) Prica li se mozda o tome?
[ viking13 @ 27.06.2007. 14:17 ] @
Citat:
Srki_82: Eeee, to je bas lepo znati. Bilo bi jos lepse znati i da ce svaka buduca verzija biti u stanju da radi sa starijim verzijama dcu fajlova :) Prica li se mozda o tome?


Svaki put kad se promeni nešto u interface delu dolazi do razlike u verzijama. Ovaj put su malo drugačije rešili dodavanje nekih novih stvari (podrška za vistu), uz pomoć class helpera i override-ovanja.

Class helperi su čudo.

Moj prijatelj je recimo dodao nove metode za Canvas, recimo TextOut, ali koji koristi Unicode.

Iako u Win32 personalitiju zvanično rade tek od D2006, postoji veoma velika verovatnoća da normalno rade i u D2005.

Ja sam uspeo da iskompajliram kod, koji je IDE podvlačio kao nekorektan.

Obzirom da nije zvanično sertifikovano da to radi, ostavio sam mogućnost da to možda radi.

Ako neko ne zna o čemu se radi, neka u svom D2005+ proba sledeće:

Code:

TSomeClassHelper = class helper for TSomeClass
   function SomeFunc : string;
end;


A onda nek proba da uradi InstanceOfSomeClass.SomeFunc

"I LOVE THIS GAME!" (ne nije NBA, nego Delphi)