Seit 2009 ist Delphi standardmäßig auf
Unicode
string = UnicodeString (vorher AnsiString)
Char = WideChar (vorher AnsiChar)
PChar = PWideChar (vorher PAnsiChar)
CreatePipe zeigt nun eben auf CreatePipe
W, wo es früher CreatePipe
A war,
so wie fast alle
WinAPI, sowie die
RTL,
VCL usw., die in Delphi mitgeliefert werden.
Jeder Code, der in damaligen Compilern fahrlässig mit compilierabhängigen Typen geschrieben wurde
und vor allem wo auch noch dynamische mit statischen Typen gemischt werden,
ist nun fehlerhaft, weil sich eben diese Typen geändert haben.
Man kann nun als Bugfix erstmal alles wieder auf
ANSI zurückbringen
oder man schaut, wo es
Unicode gibt und bringt es in einen aktuelleren Zustand.
So oder so, man muß es eben "zusamenhängend" mit den zusammenpassenden Typen und APIs entweder
fix auf
ANSI oder
Unicode bringen.