Habe noch zwei Fragen. Im "if not" Bereich steht "CoTaskMemFree". Sonst nicht.
Sollte es nicht so oder so ausgeführt werden? Aber es ist ja hier ein "Result" was ja gebraucht wird.
Bei mir ist es richtig im Einsatz. Ich will damit bewusst das Result löschen.
Dann kenne ich das "WideString" gar nicht. Bei "PWideChar(WideString(Path))".
Das garantiert mir das 16bit verwendet wird für
Unicode characters conversion.
Ps:
Mag sein das neuere Delphi Version all das anders handhaben oder schon Routinen dafür besitzen. Für D2009 sollte das gelten was ich schrieb.