Autor Beitrag
Hochhaus
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 662
Erhaltene Danke: 8

Windows 7
Delphi XE2
BeitragVerfasst: So 09.02.14 17:15 
Hallo allerseits !

ich habe bei der Übernahme eines Projektes von Delphi 6 PE zu Delphi XE2 Probleme ! An etwa 270 Stellen kommt eine Warnung des Compilers daher, die früher nicht aufgetreten ist:

Code:

ausblenden Delphi-Quelltext
1:
 P:= Pos('.EXE', S);					


Warnung:
[DCC Warnung] MAINX.PAS(2192): W1057 Implizite String-Umwandlung von 'ShortString' zu 'string'

Code:

ausblenden Delphi-Quelltext
1:
  AssignFile(G, S);					


Warnung:
[DCC Warnung] MAINX.PAS(2196): W1057 Implizite String-Umwandlung von 'AnsiString' zu 'string'

Wie gesagt: Früher kamen diese Meldungen nie - jetzt schon. Was ist der Grund und wie behebe ich die unschönen Warnungen ?

Danke im Voraus !


Hochhaus
WasWeißDennIch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 653
Erhaltene Danke: 160



BeitragVerfasst: So 09.02.14 19:02 
Der Grund ist, dass bis einschl. Delphi 2007 der generische Typ String als AnsiString (1 Byte/Zeichen) definiert war, seit Delphi 2009 aber ein UnicodeString (UTF-16 -> 2 Byte/Zeichen) ist. Dazu gibt es auch einen kleinen Leitfaden von Embarcadero: Anwendungen für Unicode anpassen

Für diesen Beitrag haben gedankt: Hochhaus
Hochhaus Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 662
Erhaltene Danke: 8

Windows 7
Delphi XE2
BeitragVerfasst: So 09.02.14 19:12 
Danke ! Das erklärt einiges !

Hochhaus