I’m currently working on a Save/Load system, and I’m trying to find a way to open the File Browser to select the file to load. I came across the Windows method GetOpenFileNameA , but it generates a lot of errors, apparently caused because of Windows.h :
It would be better to retrieve the save file names and use those to load your saves. And use the default save folder of the game. You can use Ixiguis’s solution to retrieve save file names from the default folder: Here
I use a similar function in my game Gunsmith and it works perfectly. The other main reason is that using the OS file browsers is not permitted for packaged/release builds as it is against ToS, so if you still want a file browser, you’ll have to make/find a custom one.
dont fight GetOpenFileNameA directly, the Windows.h include dance (MinWindows, AllowWindowsPlatformTypes) breaks constantly between engine versions and you still end up with a sync call that stalls the game.
same story for IDesktopPlatform, it works in editor then crashes packaged builds because its a Developer module thing. for a save/load picker that players actually click, you want a runtime dialog with the game window as parent.
easiest Blueprint route: Async Runtime File Dialog, a native file picker plugin for Unreal Engine 5, gives you Open File Picker and Save File Picker nodes with On Selected / On Cancelled coming back on the game thread, packaged Win64, UE 5.0-5.8: Async Runtime File Dialog — Native OS File Picker for Blueprints | Fab
then feed the picked path into your normal save and load code, no manual file name typing for players.