Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何获取GetFolder(IID_ExplorerPaneVisibility)调用_C++_Windows_Windows Shell_Shell Extensions - Fatal编程技术网

C++ 如何获取GetFolder(IID_ExplorerPaneVisibility)调用

C++ 如何获取GetFolder(IID_ExplorerPaneVisibility)调用,c++,windows,windows-shell,shell-extensions,C++,Windows,Windows Shell,Shell Extensions,我不熟悉名称空间扩展。我正在尝试禁用命名空间扩展的导航窗格 我的Shell视图实现实现了IFolderView::GetFolder,它返回一个IShellFolder对象。Shell文件夹类正在实现IExplorerPaneVisibility::GetPaneState方法 但我没有接到GetFolder(IID_ExplorerPaneVisibility)的电话。有人能帮我吗 STDMETHODIMP ShellFolderViewImpl::GetFolder(REFIID riid,

我不熟悉名称空间扩展。我正在尝试禁用命名空间扩展的导航窗格

我的Shell视图实现实现了IFolderView::GetFolder,它返回一个IShellFolder对象。Shell文件夹类正在实现IExplorerPaneVisibility::GetPaneState方法

但我没有接到GetFolder(IID_ExplorerPaneVisibility)的电话。有人能帮我吗

STDMETHODIMP ShellFolderViewImpl::GetFolder(REFIID riid, VOID ** ppv)
{
    if (riid == IID_IExplorerPaneVisibility)
    {
       this->QueryInterface(riid, (void**)ppv);
    }
    return S_OK;
}

STDMETHODIMP ShellFolderViewImpl::GetPaneState(REFEXPLORERPANE ep,EXPLORERPANESTATE * peps)
{
    if (ep == EP_NavPane)
        *peps = EPS_DEFAULT_OFF;
    else if (ep == EP_Commands)
        *peps = EPS_DEFAULT_OFF;
    else if (ep == EP_DetailsPane)
        *peps = EPS_DEFAULT_OFF;
    else if (ep == EP_AdvQueryPane)
        *peps = EPS_DEFAULT_OFF;
    else if (ep == EP_QueryPane)
        *peps = EPS_DEFAULT_OFF;
    else
        *peps = EPS_DONTCARE;
    return S_OK;
}
MSDN说

IExplorerPaneVisibility实现是从Shell中检索的 文件夹。然后,从视图中检索Shell文件夹

我将此理解为:;它将查询IShell文件夹的接口,以获取IExplorerPaneVisibility实现

您还应该检查,它显示了一些可能需要关闭某些窗格的变通方法

我希望这里的代码不是您真正的实现,您不应该在GetFolder中为您不认识的东西返回S_OK

MSDN说

IExplorerPaneVisibility实现是从Shell中检索的 文件夹。然后,从视图中检索Shell文件夹

我将此理解为:;它将查询IShell文件夹的接口,以获取IExplorerPaneVisibility实现

您还应该检查,它显示了一些可能需要关闭某些窗格的变通方法

我希望这里的代码不是您真正的实现,您不应该在GetFolder中为您不认识的东西返回S_OK