Erstmal, nimm das
= True
aus dem Code raus, denn True ist nicht gleich True.
Und dann hat der Dialog schon immer (seit
WinNT) ein Problem.
> Wenn ein ungültiger Dateiname angegeben wird, dann wird der interne
API-Aufruf als "abgebrochen" beendet (so, als wenn man auf Abbrechen gecklickt hätte) und es gibt aber keinerlei Fehlermeldung.
Prüfe also mal den Inhalt von FileName und eventuell auch von InitialDir.
[add]
Wobei '*.rtf' schonmal fehlerhaft ist, dann * ist kein gültiges Zeichen innerhalb einer Pfadangabe.