Autor Téma: Migrace Delphi 5 --> Delphi 2010, jak narocne?  (Přečteno 2837 krát)

Offline Petr

  • Příspěvků: 14
  • Karma: 0
Migrace Delphi 5 --> Delphi 2010, jak narocne?
« kdy: 13-06-2012, 14:40:47 »
Ahoj,

Dostal jsem na spravu jeden projekt v D5 a chtel bych se zeptat, jak by bylo narocne ho zmigrovat na Delphi 2010.

Zvladne to D2010 samo?
Na co je treba si dat pozor?

Diky za odpovedi.

P.

Offline leonell

  • Mladík
  • **
  • Příspěvků: 99
  • Karma: 3
Re:Migrace Delphi 5 --> Delphi 2010, jak narocne?
« Odpověď #1 kdy: 13-06-2012, 15:27:53 »
Problém může být s podporou unicode, zavedenou v Delphi 2009.
Záleží na aplikaci (a případně komponentách), jak moc se to bude problém.


Offline Jirka Ondricek

  • Mladík
  • **
  • Příspěvků: 81
  • Karma: 5
    • Verze Delphi: 10.2 Tokyo, 10.3 Rio
Re:Migrace Delphi 5 --> Delphi 2010, jak narocne?
« Odpověď #2 kdy: 13-06-2012, 15:43:32 »
Prevadel jsem, nas ne uplne maly sw pro komunikaci s mnoha zarizenimi, prave z D5 do 2010. Hodne problemu bylo prave s podporou Unicode, ale vsechno se dalo vyresit. Pak si vzpominam, ze tam bylo par "deprecated" veci, ktere jsme resili, ale nic vyrazneho.

U par dalsich malych programku to bylo jen unicode. Ja bych se bal hlavne komponent dalsich stran, pokud tam jsou. Uz se mi stalo, ze je dotycny autor dal nevyvijel a museli jsme to nejak vyresit.

Offline Petr

  • Příspěvků: 14
  • Karma: 0
Re:Migrace Delphi 5 --> Delphi 2010, jak narocne?
« Odpověď #3 kdy: 13-06-2012, 18:11:00 »
Ahoj,

diky za odpovedi, docela jste mne potesili. Komponenty tretich stran v tom projektu nastesti nejsou, jen standartni Borlandi, ale je to asi 30 tisic radku... :-)

Offline jirka52

  • Mladík
  • **
  • Příspěvků: 52
  • Karma: 2
    • Verze Delphi: D2, D5, D6, D2005, D2006, D2009, DXE2,DXE7,D10.2
Re:Migrace Delphi 5 --> Delphi 2010, jak narocne?
« Odpověď #4 kdy: 14-06-2012, 12:32:34 »
Převáděl jsem projekty z Delphi 6, nejvíc práce je s Unicode

Online JaroB

  • Guru
  • *****
  • Příspěvků: 948
  • Karma: 26
    • Verze Delphi: XE8, Seattle
Re:Migrace Delphi 5 --> Delphi 2010, jak narocne?
« Odpověď #5 kdy: 18-06-2012, 16:24:12 »
Pokud máte hodně zdrojového kódu, bude asi vhodné přistoupit ke konverzi kapku statisticky. Projít a vyhledat všechny @, Addr, ^, SizeOf(), Length() a SetLength() – tady je nutné rozhodnout i podle kontextu, jaké parametry pozměnit, podívat se na přímá volání funkcí Windows (v přímém volání zaměnit funkce končící xxxA za funkce končící XXX tam, kde to má smysl, někde to už Embarcadero má hotové, pak stačí koncové A odstranit), podívat se, zdali nejsou použity řetězce jako bufery (a přebouchnout je na rawansistring), podívat se na znakové množiny (využít CharInSet()), podívat se na warnins s přiřazením ansistring := unicodestring, případně použít možnost izolovat ansistring operace (s užitím unity AnsiStrings) atp. Mnohdy pomůže šikovné přetypování v přiřazení, takže i část kódu vypadne. A především pokusit se utilitou Convert.exe převést binární dfm soubory na textový tvar (mnohem lépe se to opravuje ručně) a pak otevřít všechny formuláře v nové verzi Delphi a přizpůsobit vlastnostem nové verze (protože přece jenom v Delphi 5 byly dfm ansi).

Možností je asi víc.

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 2289
  • Karma: 102
    • Verze Delphi: D5,D2007, DXE, DXE2 + 2 poslední (Tokyo)
    • O Delphi v češtině
Re:Migrace Delphi 5 --> Delphi 2010, jak narocne?
« Odpověď #6 kdy: 18-06-2012, 16:36:17 »
Mně osobně z Delphi 5 dalo nejvíce práce přidat všude do uses Variants (hodně používám konstantu NULL). Což platí jen pro 5 a níže.
Embarcadero MVP - Czech republic