Zitat von
Hansa:
Da vermute ich nur : "keine Antwort ist auch eine Antwort"
Normalerweise genügt ein einfaches Beispiel. Oder das ganze ist eben tatsächlich unwichtig.
Das wird es sicher sein.
... wer selber denken kann ist klar im Vorteil.
Zitat von
mael:
Manchmal wünsche ich mir einen FreePascal Compiler der das alles macht, direkt Delphi-Code kompilieren kann (also vollständig kompatibel), auf SSE und 64 Bit optimiert und die Entwickler von FreePascal sich einen ordentlichen Codingstil angewöhnen
Fromme Wünsche
Zitat von
mael:
Obwohl ich mich intensiv mit direkter Windows-Programmierung beschäftige, muß ich zu meiner grenzenlosen Schande gestehen, daß ich das nie gebraucht habe.
Ursprünglich komme ich von
Win9x, da gibt es keine Sicherheit
Irgendwie lies dieses MaximumLength mich schon vermuten daß irgendwo ein buffer overrun verhindert werden soll. Aber mal ehrlich, warum verwendet MS nicht die WideStrings, da hätten die solche Probleme nicht
, das könnte man dann einfach casten.
Bevor man mir sagt C++ hat keine WideStrings: Ich weiß, aber die Struktur/Record hätten die ja nur ein klein wenig anders machen müssen und dann wäre das kompatibel.
Ich wage einmal zu sagen, daß diese Kompatibilität dann Borland obläge, da UNICODE_STRING schon lange vor Delphi 2 (erstes teilweise-32bit-Delphi) zur Anwendung kam. Allerdings kann UNICODE_STRING ja auch nur $FFFF div 2 (also $FFFE / 2) Zeichen aufnehmen.
Achso und das mit dem casten ist nicht ganz so trivial, da WideString seine Länge nicht in Bytes sondern in Zeichen (sizeof(WideChar) = 2 Bytes) mißt. Daher muß vor jeden Typecast dann noch eine Berechnung (Aufgabe für entweder eine extra Funktion, oder ein Makro).