[Bug 40099] New: IFileOpenDialog with FOS_PICKFOLDERS option
wine-bugs at winehq.org
wine-bugs at winehq.org
Sun Feb 7 07:13:12 CST 2016
https://bugs.winehq.org/show_bug.cgi?id=40099
Bug ID: 40099
Summary: IFileOpenDialog with FOS_PICKFOLDERS option
Product: Wine
Version: 1.9.2
Hardware: x86
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs at winehq.org
Reporter: nozomimasao at gmail.com
Distribution: ---
IFileOpenDialog sometimes returns a bad path if FOS_PICKFOLDERS option is
specified.
for example, if you selected C:\Windows folder *inside* Windows folder,
GetResult method returns C:\Windows\Windows.
Steps of the user:
1. Go inside C:\Windows by double-clicking Windows folder.
2. Click select button.
Then the path will be C:\Windows\Windows.
*The user can avoid this issue by below steps.
1. Select C:\Windows by clicking Windows folder *without* going inside it.
2. Click select button.
Then the path will be C:\Windows.
For your information, the code is like this;
IFileOpenDialog *fo = nullptr;
CoCreateInstance(CLSID_FileOpenDialog, NULL, CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(&fo));
DWORD opt = 0;
fo->GetOptions(&opt);
fo->SetOptions(opt | FOS_PICKFOLDERS);
fo->Show(hWnd);
IShellItem *si = nullptr;
fo->GetResult(&si);
LPWSTR path = nullptr;
si->GetDisplayName(SIGDN_FILESYSPATH, &path);
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list