使用未设置SetThemeAppProperties
标志的参数调用Common Dialogs (或在列表 File Open Dialog, )返回 error 。STAP_ALLOW_CONTROLS
CoCreateInstance
CLSID_FileOpenDialog
0x80040111
示例代码如下:
HRESULT hResult;
CComPtr< IFileOpenDialog > pFileOpenInterface1;
CComPtr< IFileOpenDialog > pFileOpenInterface2;
hResult = ::CoCreateInstance( CLSID_FileOpenDialog, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS( &pFileOpenInterface1 ) );
::SetThemeAppProperties( 0 );
hResult = ::CoCreateInstance( CLSID_FileOpenDialog, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS( &pFileOpenInterface2 ) );
为了使它成为运行代码,我(在 Visual Studio 2010 Professional 中)创建了一个简单的 Win32 GUI 应用程序,并将该代码添加到菜单帮助|关于处理程序。
为什么会这样以及如何解决这个问题?