I have requirement where when showOpenDialog , user enters path manually and it does not exist, 
another dialog pops up and asks if path should be created automatically.

However I only see a callback at https://github.com/electron/electron/blob/master/docs/api/dialog.md#dialogshowopendialogbrowserwindow-options-callback

and i cant capture error so I can open another dialog.Electron just htorws error its self with following message
```
Path does not exist.
Check the path and try again.
```
see here as windows supports it
https://msdn.microsoft.com/en-us/library/system.windows.forms.filedialog.checkfileexists(v=vs.110).aspx

something like will be very helpful
```
openFileDialog1.CheckFileExists = true;
openFileDialog1.CheckPathExists = true;.
```
atom/browser/ui/file_dialog_win.cc
const std::string& title,
                    const std::string& button_label,
                    const base::FilePath& default_path,
                    const Filters& filters,
                    int properties,
                    std::vector<base::FilePath>* paths) {
  int options = FOS_FORCEFILESYSTEM | FOS_FILEMUSTEXIST;
  if (properties & FILE_DIALOG_OPEN_DIRECTORY)
    options |= FOS_PICKFOLDERS;
  if (properties & FILE_DIALOG_MULTI_SELECTIONS)
    options |= FOS_ALLOWMULTISELECT;
  if (properties & FILE_DIALOG_SHOW_HIDDEN_FILES)
    options |= FOS_FORCESHOWHIDDEN;
  FileDialog<CShellFileOpenDialog> open_dialog(
      default_path, title, button_label, filters, options);
  if (!open_dialog.Show(parent_window))
    return false;
  ATL::CComPtr<IShellItemArray> items;
  HRESULT hr = static_cast<IFileOpenDialog*>(open_dialog.GetPtr())->GetResults(
      &items);
  if (FAILED(hr))
    return false;
  ATL::CComPtr<IShellItem> item;
  DWORD count = 0;
  hr = items->GetCount(&count);
  if (FAILED(hr))
    return false;
  paths->reserve(count);
  for (DWORD i = 0; i < count; ++i) {