VB.NET如何编写能够类似Win桌面那样的程序

哥是龙王 2019-08-12 03:50:37
想开发一个能替代Win桌面功能的程序,实现以下功能:电脑启动后自动运行程序A,进入A程序窗体后,除非点击“退出”按钮,否则这个A窗体永远在最前面,也就是不想让用户看到原桌面。关闭Win的任务栏,屏蔽[Win]+D组合键,防止用户利用任务栏和组合键切换。本来计划利用API的GetDesktopWindows()函数取得桌面句柄,再使该桌面窗体不可见,结果发现桌面窗体不可能做到不可见,想想也是,如果Win能够让桌面不可见,那该如何显示?
所以又改变思路,只要能够关闭Win的任务栏,屏蔽[Win]+D组合键,把焦点落在A程序窗体上,是不是就能能够达到替换Win桌面的效果?请问VB.NET如何关闭任务栏?或是哪位大虾给点思路或者有具体的实例参考?谢谢。
...全文
445 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
哥是龙王 2019-11-23
  • 打赏
  • 举报
回复
引用 13 楼 张天星的回复:
[quote=引用 9 楼 哥是龙王 的回复:] 楼上两位,此方法简单粗暴有效果,但是总觉得不妥
这个很稳妥。 在屏蔽掉Ctrl+alt+del等可能跳出的热键。 就可以锁定屏幕了。。。。[/quote] 好吧,谢谢你的参与。
哥是龙王 2019-11-23
  • 打赏
  • 举报
回复
引用 11 楼 jhonsonzhang的回复:
最简单粗暴的做法,直接订做只运行你程序的上位机。苏州工业园和深圳一抓一大把。为什么要去折磨微软的操作系统给和自己呢
因为很多普通PC机要运行这个。
jhonsonzhang 2019-11-23
  • 打赏
  • 举报
回复
最简单粗暴的做法,直接订做只运行你程序的上位机。苏州工业园和深圳一抓一大把。为什么要去折磨微软的操作系统给和自己呢
哥是龙王 2019-11-14
  • 打赏
  • 举报
回复
引用 6 楼 良朋 的回复:
修改注册表,可以实现你的要求。

能具体些吗?
哥是龙王 2019-11-07
  • 打赏
  • 举报
回复
楼上两位,此方法简单粗暴有效果,但是总觉得不妥
data-v-165b75c4 2019-11-07
  • 打赏
  • 举报
回复
是啊,把explorer干掉就没桌面了
threenewbee 2019-08-16
  • 打赏
  • 举报
回复
最简单的办法,写好你的 exe,替换掉 windows下的 explore.exe
良朋 2019-08-16
  • 打赏
  • 举报
回复
修改注册表,可以实现你的要求。
雪千渔 2019-08-13
  • 打赏
  • 举报
回复
引用 3 楼 哥是龙王 的回复:
[quote=引用 2 楼 雪千渔 的回复:]
无边框 大小按屏幕分辨率来走,用SetWindowPos置顶,循环设置窗体焦点

无边框理解,大小按屏幕分辨率理解,用SerWindowPos置顶理解,循环设置窗体焦点是啥目的?[/quote]

虽然置顶了窗口,假如通过快捷键或自动弹出了窗口,那焦点/插入点就会在别的窗口上,可以用键盘控制,如果hook掉快捷键也没啥问题
哥是龙王 2019-08-13
  • 打赏
  • 举报
回复
引用 2 楼 雪千渔 的回复:
无边框 大小按屏幕分辨率来走,用SetWindowPos置顶,循环设置窗体焦点

无边框理解,大小按屏幕分辨率理解,用SerWindowPos置顶理解,循环设置窗体焦点是啥目的?
雪千渔 2019-08-13
  • 打赏
  • 举报
回复
无边框 大小按屏幕分辨率来走,用SetWindowPos置顶,循环设置窗体焦点
哥是龙王 2019-08-12
  • 打赏
  • 举报
回复
哪位大虾给个思路阿。对于Win+D的屏蔽是用全局钩子还是有其他更好的方法?请大虾赐教!

16,553

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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