Improve Windows open dialog handling 
Improve Windows open dialog handling 

- Correctly handle OleUninitialize
- Don't leak LPITEMIDLIST if SHGetPathFromIDListW fails
- Use correct nMaxFile size
- Use string alloc helper function
- Hide read-only checkbox
LIJI32/SameBoy,LIJI32/SameBoy