Autor Téma: D10.4.1 - Úprava systémových unit  (Přečteno 492 krát)

Offline paja666

  • Nováček
  • *
  • Příspěvků: 42
  • Karma: 0
    • Verze Delphi: 10.1.2 Berlin + 10.4.1 Sydney
D10.4.1 - Úprava systémových unit
« kdy: 23-11-2020, 10:26:22 »
Již od Delphi 7 opravuji (System.)SysUtils.pas - načtení formátování datumu (https://quality.embarcadero.com/browse/RSP-16577), ale pod 10.4.1 mi jde aplikace zakompilovat pouze v Release. Pod Debug mi kompilátor hlásí chybu [dcc32 Fatal Error] WADM.dpr(228): F2051 Unit System.Classes was compiled with a different version of System.SysUtils.FreeAndNil.

Kde může být problém?

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 1132
  • Karma: 49
    • Verze Delphi: 10.3
Re:D10.4.1 - Úprava systémových unit
« Odpověď #1 kdy: 23-11-2020, 11:27:36 »
Tuhle hlášku jsem vídal např. s upraveným Vcl.Consts.pas, když se lišil seznam definovaných resourcestringů oproti originálu (typicky po upgrade Delphi na novější verzi a dosud jsem neměl upravený Vcl.Consts.pas tak, aby odpovídal té novější verzi).

Offline paja666

  • Nováček
  • *
  • Příspěvků: 42
  • Karma: 0
    • Verze Delphi: 10.1.2 Berlin + 10.4.1 Sydney
Re:D10.4.1 - Úprava systémových unit
« Odpověď #2 kdy: 23-11-2020, 11:44:15 »
Tady vezmu System.SysUtils z instalace D10.4.1, upravím TFormatSettings.Create a funguje to pouze pod Release setem.

Úprava je pouze:

Kód: Delphi [Vybrat]
  1. //  Result.DateSeparator := GetLocaleChar(Locale, LOCALE_SDATE, '/');
  2.   Result.DateSeparator := Trim(GetLocaleStr(Locale, LOCALE_SDATE, '/'))[1];
  3.  

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3089
  • Karma: 135
    • Verze Delphi: D2007, XE3, DX10
Re:D10.4.1 - Úprava systémových unit
« Odpověď #3 kdy: 23-11-2020, 12:51:46 »
Tady vezmu System.SysUtils z instalace D10.4.1, upravím TFormatSettings.Create a funguje to pouze pod Release setem.
A mas v tom DEBUG zaskrtnuto Use Debug DCUs?

Offline paja666

  • Nováček
  • *
  • Příspěvků: 42
  • Karma: 0
    • Verze Delphi: 10.1.2 Berlin + 10.4.1 Sydney
Re:D10.4.1 - Úprava systémových unit
« Odpověď #4 kdy: 23-11-2020, 13:00:49 »
A mas v tom DEBUG zaskrtnuto Use Debug DCUs?

Ano, mám. Zkoušel jsem různé nastavení zatržítek, ale bez úspěchu. Vám všem to funguje?

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 1132
  • Karma: 49
    • Verze Delphi: 10.3
Re:D10.4.1 - Úprava systémových unit
« Odpověď #5 kdy: 23-11-2020, 13:14:52 »
Ano, mám. Zkoušel jsem různé nastavení zatržítek, ale bez úspěchu. Vám všem to funguje?

Já ještě nenašel odvahu na 10.4.1 přejít :-)

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3089
  • Karma: 135
    • Verze Delphi: D2007, XE3, DX10
Re:D10.4.1 - Úprava systémových unit
« Odpověď #6 kdy: 24-11-2020, 07:09:46 »
Ano, mám. Zkoušel jsem různé nastavení zatržítek, ale bez úspěchu. Vám všem to funguje?
Ja 10.4 nemam a nejspis nikdy mit nebudu. Jen me to napadlo, i kdyz on je to pravdepodobne parametr jen pro debugger, ne pro prekladac.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5559
  • Karma: 42
    • Verze Delphi: W10 + Delphi 10.4 professional
Re:D10.4.1 - Úprava systémových unit
« Odpověď #7 kdy: 24-11-2020, 09:17:22 »
Ja žiaden problém nemám. Nie je to spojené s tým, že sa zmenila definícia FreeAndNil?
.
PS: na doplnenie plných ciest existuje UsesCleaner. Viď Delphi-praxis
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Offline paja666

  • Nováček
  • *
  • Příspěvků: 42
  • Karma: 0
    • Verze Delphi: 10.1.2 Berlin + 10.4.1 Sydney
Re:D10.4.1 - Úprava systémových unit
« Odpověď #8 kdy: 24-11-2020, 10:35:52 »
Ja žiaden problém nemám.

Znamená to, že přidáním zdrojového souboru System.SysUtils k projektu je možné provést build jak v Release, tak Debugu?

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 5559
  • Karma: 42
    • Verze Delphi: W10 + Delphi 10.4 professional
Re:D10.4.1 - Úprava systémových unit
« Odpověď #9 kdy: 24-11-2020, 11:55:49 »
Áno. Ja to ani ináč neuvádzam. Vždy kvalifikovaný/úplný názov.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.