C# 如何使用c双击桌面来隐藏桌面图标#
我想知道是否有一种方法可以在双击桌面时切换桌面图标以显示/隐藏。类似于在Stardock围栏中的操作。我希望使用visual c完成此操作。问题的第二部分(双击桌面时)相对简单。您需要将应用程序定义的钩子过程安装到钩子链中。听起来很难,但是在找到的代码示例中有详细的解释。您可能需要下载源代码(需要那里的免费帐户)C# 如何使用c双击桌面来隐藏桌面图标#,c#,desktop,icons,double-click,C#,Desktop,Icons,Double Click,我想知道是否有一种方法可以在双击桌面时切换桌面图标以显示/隐藏。类似于在Stardock围栏中的操作。我希望使用visual c完成此操作。问题的第二部分(双击桌面时)相对简单。您需要将应用程序定义的钩子过程安装到钩子链中。听起来很难,但是在找到的代码示例中有详细的解释。您可能需要下载源代码(需要那里的免费帐户) 对于第一部分,隐藏/取消隐藏桌面图标,我发现了几个类似的代码示例,例如,在我的电脑上似乎没有一个可以工作,因此您可能需要寻找另一个解决方案来解决这个问题。要隐藏桌面图标,有一个注册表项
对于第一部分,隐藏/取消隐藏桌面图标,我发现了几个类似的代码示例,例如,在我的电脑上似乎没有一个可以工作,因此您可能需要寻找另一个解决方案来解决这个问题。要隐藏桌面图标,有一个注册表项(请查看) 我想你必须重新启动你的浏览器,然后使用
Process[] proc = Process.GetProcessesByName("Explorer");
foreach(Process p in proc)
p.Kill();
Process.Start("explorer.exe");
我不知道如何使用C#显示/隐藏桌面图标,但是我读了一些关于如何使用resistry键的文章。使用注册表项方法的问题是“Explorer.exe”进程必须重新启动才能使更改生效。幸运的是,我在网上找到了一个代码示例:
On Error Resume Next
' Kill Explorer.exe
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'explorer.exe'")
For Each objProcess in colProcessList
objProcess.Terminate(1)
Next
' Launch Explorer.exe
Set objShell = CreateObject("Wscript.Shell")
objShell.Run "explorer.exe"
Set objShell = Nothing
Wscript.exit
该脚本将在不注销当前用户的情况下快速重新启动“Explorer.exe”进程。。。。希望有帮助 你说得对,最后一个链接似乎不起作用,但无论如何还是要感谢前两个链接。使用注册表黑客将永久隐藏桌面图标。我想把它切换成显示/隐藏。