Die geschäftliche Ruhe des Sommers hat begonnen, also habe ich die Migration auf D2009 aufgenommen. Ich habe grob für jedes Subsystem des Programms bestimmt, ob sie ascii bleiben oder Unicode sein und mit der Portierung beginnen sollen.D2009 TStringlist ansiktring
Es ging ziemlich gut, alle Komponenten waren dort in D2009-Versionen (einige, wie VSTView, etwas inkompatibel obwohl), aber ich habe jetzt ein Problem, in einigen Teil muss anisstring bleiben, verwende ich TStringList, meist als eine grundlegende Karte.
Gibt es schon etwas leicht zu ersetzen, oder sollte ich einfach eine Kürzung ansistring tstringlist, basierend auf alten Delphi oder FPC-Quelle?
Ich kann mir nicht vorstellen, dass ich der Erste bin, der darauf reinkommt?
Die Änderungen müssen relativ lokalisiert sein, damit der Code mit BDS2006 kompilierbar bleibt, während ich die Validierungskurve durchlaufe. Ein paar idefdefs hier und da sind kein Problem. Natürlich zählen string-> anisstring und char -> ansichar etc nicht als Modifikationen in meiner Quelle, da ich das sowieso machen muss, und es ist voll rückwärts compat.
Edit: Ich konnte einige der Dinge in Reader/Writer-Klassen wegarbeiten. Das macht Masons Lösung einfacher als ich ursprünglich dachte. Ich werde Gabrs Vorschlag als Fallback berücksichtigen.
Generika ist so ziemlich der Grund, warum ich D2009 gekauft habe. Schade, dass sie es in FPC inkompatibel gemacht haben
Machst du eine Menge Berechnung, einschließlich der Byteanzahl einer Zeichenfolge und der Länge der Zeichenfolge? Denn das ist für mich die einzige echte Anforderung, eine solche Herabstufung vorzunehmen. – smok1
Eins ist ja, versionierte abwärtskompatible Binärversionen. Die andere (die ich noch nicht einmal gestartet habe) ist eine angepasste Sax- und DOM-Implementierung. Aber der Hauptgrund ist, dass ich Kunden nicht erklären möchte, wie man Unicode-Textdateien usw. mit Notizblock und Excel öffnet und es einfach alt, einfach alt lässt. –
Wieder bin ich perplex vom Verhalten der Benutzer auf SO. Fünf Benutzer haben diese Frage mit nachdenklichen Antworten beantwortet, von 71 Zuschauern bisher mindestens 14, aber _not one_ hat die Frage nicht abgestimmt. Keine Frage ist perfekt, aber ich fand es hilfreich, das Q und das As zu lesen - also +1 von mir. IMHO, ** Support Delphi ** beinhaltet unterstützende informative Diskussionen zu diesem Thema. – Argalatyr