There's information missing in OPENFILENAME structure file core.sys.windows.windows.d http://msdn.microsoft.com/en-us/library/windows/desktop/ms646839%28v=vs.85%29.aspx #if (_WIN32_WINNT >= 0x0500) void *pvReserved; DWORD dwReserved; DWORD FlagsEx; #endif