createdesktop成功后,如何让我创建的desktop不被别的进程EnumDesktops到

0313700000 2009-11-16 03:59:32
如题,或者可以被枚举到,但不可以被SwitchDesktop切换
...全文
252 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
arping0214 2011-10-13
  • 打赏
  • 举报
回复
請教 0313700000
我遇到了跟您同樣的問題!!
可以稍微 貼一下 程式片段 讓我參考嗎!!
關於您用 CreateDesktop 和 SetSecurityInfo 達到禁切換的功能!!
cnzdgs 2009-11-17
  • 打赏
  • 举报
回复
CreateDesktop指定安全属性。
y_l_stone 2009-11-17
  • 打赏
  • 举报
回复
winsta0的winlogon一般程序是改不了它的安全属性的,你可以参考下
0313700000 2009-11-17
  • 打赏
  • 举报
回复
cnzdgs:
如何指定安全属性?最后一个参数?
0313700000 2009-11-17
  • 打赏
  • 举报
回复
Tr0j4n:
多谢你的回复,不过我创建的时候不加DESKTOP_SWITCHDESKTOP,也是没有用,如果其他进程枚举到了我创建的DESKTOP,然后他调用OpenDesktop设置这个标志,还是可以切换回来的

不知道还有没有其他的方法
MoXiaoRab 2009-11-17
  • 打赏
  • 举报
回复

HDESK WINAPI CreateDesktop(
__in LPCTSTR lpszDesktop,
__reserved LPCTSTR lpszDevice,
__reserved DEVMODE *pDevmode,
__in DWORD dwFlags,
__in ACCESS_MASK dwDesiredAccess,//这个上面做下手脚
__in_opt LPSECURITY_ATTRIBUTES lpsa
);



这个成员变量里面不要加DESKTOP_SWITCHDESKTOP,就不会被切换了
0313700000 2009-11-17
  • 打赏
  • 举报
回复
多谢各位,12楼的说法给了我启发,使用SetSecurityInfo方法,实现了我需要的不能切换的功能(不能枚举还是没有实现).
vecri 2009-11-17
  • 打赏
  • 举报
回复
API Hook...
roman_v 2009-11-16
  • 打赏
  • 举报
回复
hook是很正当的行为。。
bbycbyi 2009-11-16
  • 打赏
  • 举报
回复
试试设置一个互斥量,创建以后设置信号量为空,即不能访问。
hongya6088 2009-11-16
  • 打赏
  • 举报
回复
如果不想被SwitchDesktop切换,可以试一下使用作业,设置作业对象的基本用户界面限制的位标志为:JOB_OBJECT_UILIMIT_DESKTOP。
0313700000 2009-11-16
  • 打赏
  • 举报
回复
to 2楼:
我做的是很正当的事情.....,不是要做坏事,同样,我也不想做钩子,或者可以通过设置权限的方式,可我现在还不了解方法
不管怎样,多谢你...
cicigl 2009-11-16
  • 打赏
  • 举报
回复
UP
Waiting4you 2009-11-16
  • 打赏
  • 举报
回复
HOOK EnumDesktops和SwitchDesktop这两个API,呵呵

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧