none
win10,进入新建的桌面后,开始菜单不能弹出 RRS feed

  • 问题

  • win10,进入新建的桌面后,开始菜单不能弹出,原桌面的开始菜单没问题,win7不存在上述问题,代码如下:

    void main()
    {
        char DeskName[] = "abc";
        STARTUPINFO si = { 0 };
        PROCESS_INFORMATION pi = { 0 };
        si.cb = sizeof(STARTUPINFO);
        si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
        si.wShowWindow = SW_SHOW;
        si.lpDesktop = DeskName;
    
        HDESK hdesk = CreateDesktop(DeskName, NULL, NULL, 0, GENERIC_ALL, NULL);
        
        bool rv = SetThreadDesktop(hdesk);
        if (rv == false) {
            int err = GetLastError();
            printf("err:%d\n", err);
            return;
        }
    
        SwitchDesktop(hdesk);
        CreateProcess("C:\\Windows\\explorer.exe", NULL, NULL, NULL, TRUE, 0, NULL, NULL, &si, &pi);
    }
    
    


    2020年7月11日 2:55

全部回复

  • 你好,

    感谢您的提问。

    >> Win10,进入新建的桌面后,开始菜单不弹出。

    Windows 10 发布后,Windows系统外壳内置了虚拟桌面功能。Win10中的快速虚拟界面,不再使用Win32中的CreateDesktop API实现,而是基于新的COM接口IVirtualDesktopManager来将当前桌面移动到活跃桌面。

    你可以参考:How to use the IVirtualDesktopManager interface in C++/Win32 来了解它的具体使用方法。

    Best Regards,

    Song Zhu



    MSDN Community Support Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    2020年7月13日 5:47