import win32gui, win32con, os filter='Python Scripts\0*.py;*.pyw;*.pys\0Text files\0*.txt\0' customfilter='Other file types\0*.*\0' fname, customfilter, flags=win32gui.GetSaveFileNameW( InitialDir=os.environ['temp'], Flags=win32con.OFN_ALLOWMULTISELECT|win32con.OFN_EXPLORER, File='somefilename', DefExt='py', Title='GetSaveFileNameW', Filter=filter, CustomFilter=customfilter, FilterIndex=1) print('save file names:', repr(fname)) print('filter used:', repr(customfilter)) print('Flags:', flags) for k,v in list(win32con.__dict__.items()): if k.startswith('OFN_') and flags & v: print('\t'+k) fname, customfilter, flags=win32gui.GetOpenFileNameW( InitialDir=os.environ['temp'], Flags=win32con.OFN_ALLOWMULTISELECT|win32con.OFN_EXPLORER, File='somefilename', DefExt='py', Title='GetOpenFileNameW', Filter=filter, CustomFilter=customfilter, FilterIndex=0) print('open file names:', repr(fname)) print('filter used:', repr(customfilter)) print('Flags:', flags) for k,v in list(win32con.__dict__.items()): if k.startswith('OFN_') and flags & v: print('\t'+k)