Das keine Unterscheidung zwischen
ANSI und PWideChar gemacht wird liegt
wohl daran, dass entsprechend der Delphi-Version der Compiler die 'richtige'
Funktion aufruft. Im diesem Fall ist Delphi 2009.
Nja, in deinem Profil steht ja D7.
Dennoch nutze bitte die jeweiligen APIs, welche zu den P...Chars passen.
Vorallem wenn du hier Codes für andere veröffentlichst, könnten bestimmt viele mit einem älteren
Ansi-Delphi diesen Code nutzen und dann knallt's.
Das ich mir bei PWideChar ein StrAlloc sparen kann, wenn ich StrPCopy aufrufe war mir neu, ist aber jetzt gemerkt.
Nee, sparen kannst du es dir nicht ... eher andersrum.
StrAlloc reserviert Speicher und kopiert den übergebenen Text in diesen Speicher.
StrPCopy kopiert Text in den angegebenen Speicher/PChar.
Entweder man reserviert anders Speicher und kopiert dann via StrPCopy
oder man nutzt nur StrAlloc (das StrPCopy wäre hier doppelt kopiert).
Genauso die Sache mit dem INVALID_HANDLE_VALUE.
Das Invalid
Handle bekommt man über's
MSDN CreateFile, siehe "Return Value".
Zitat:
Meckert Delphi denn nicht beim ersten Result?
Im Gegenteil, es meckert weil der Rückgabewert undefiniert sein könnte.
Danke
PS Werde noch ein paar kleine Korrekturen einarbeiten, sobald der Virenscanner fertig ist.[/QUOTE]