PickerModalLoopの前に屈服した話
QFileDialogクラスの静的メソッドに、getOpenFileNameというものがある。
これはたぶんWin32APIの同名関数のラッパであるが、
Qt Creator上で使用すると次のようなランタイムエラーがでる。
shell\comdlg32\fileopensave.cpp(14274)\comdlg32.dll!00007FFA27B4EFF2: (caller: 00007FFA27B7FDA1) ReturnHr(3) tid(2930) 80004005 エラーを特定できません
CallContext:[\PickerModalLoop]
アプリケーションが落ちることはないのだけれど、
致命的なエラーです。
と言って脅されるので、Google大先生で解決策を探すことにした。
結論から言うと、これはWindows10のバグで、あきらめた方がよいらしい。
[QTBUG-52618] comdlg32.dll, thumbcache.dll warnings when using QFileDialog - Qt Bug Tracker
- Windows7まで問題なく動いたソースもエラーが出る
- 何もできることはない
- Qtのバグではなく、Windows10のバグである
- 諸悪の根源はcomdlg32.dll
Microsoftの修正が待たれるわけだけれど...
Windows 10 comdlg32.dll problems
二年以上前の質問が完全に無視されている。
期待しない方がいいらしい。