Na gut. Vermutlich steht in deinem Programm beim Laden der
XML-Datei eine Zeile wie
xmldoc.load('mymovies.xml');
Vergiss bitte nicht, du hast keinen Codeauszug aus deinem Programm gezeigt. Ich weiß also nicht wie die Zeile bzw. die Variablen bei dir heißen. Ist nur geraten.
Kurz gesagt: Du hast vermutlich den Pfad zur
XML-Datei vergessen. Warum? In den mir bekannten Fällen ändert sich durch die Auswahl einer Datei in einem Dialog auch das aktuelle Arbeitsverzeichnis. Das Arbeitsverzeichnis muss nicht zwangsläufig mit dem Verzeichnis identisch sein, in dem sich deine
XML-Datei befindet.
Und das erklärt auch das von dir geschilderte Problem: Gibst du den Pfad zur Bilddatei per Hand ein, dann bleibt das aktuelle Arbeitsverzeichnis erst mal unverändert, und dein Programm findet die
XML-Datei auch noch. Sobald du den Dialog selbst verwendest (sprich: hier ein Klick, da ein Klick, dort ein Verzeichnis ausgewählt, usw.) ändert sich das Arbeitsverzeichnis, und dein Programm sucht vermutlich im aktuellen Verzeichnis nach der
XML-Datei. Da es sie nicht finden kann, du aber trotzdem auf dem Öffnen bestehst, kommt es zur Fehlermeldung.