Also mindestens in Delphi XE hatten wir schon das Problem, dass ungültige Pfade (ungültige Syntax, nicht nicht-existierender Pfad) den Dialog nicht öffnete.
Und so weit ich mich glaub erinnern zu können (viele Jahre ist es her), kam da direkt beim Aufruf der
API bereits als Ergebnis das "Cancel" zurück, ohne einen Fehlercode, als ich mich damals durch die
RTL gedebuggt hatte.