Schonmal getestet was passiert, denn Du in Deinem Programm z.B. "pfad\c1541.exe c:\floppy\c m.d64" aufrufst?
Also das .d64 File hat ein Leerzeichen im Dateinamen.
Nicht in der Konsole eingetippt, sondern vom Programm aus Aufrufen.
Bei mir läuft es so, das c1541.exe in einem Verzeichnis mit Leerzeichen liegen darf und auch als "c15 41.exe" gestartet werden kann.
Aber wehe c1541.exe bekommt selber als Parameter irgendwo ein Leerzeichen mitgeliefert.