Because GetSaveAsfilename doesn't save anything, it just returns the full path of the file to be saved. You have to save that returned filename.