移除任务栏右端"显示桌面"按钮-AutoIt

#NoTrayIcon
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#PRE_Icon=蓝点lilac.ico
#PRE_Outfile=RemoveShowDesktopButton_x32.exe
#PRE_Outfile_x64=RemoveShowDesktopButton_x64.exe
#PRE_Compression=4
#PRE_Compile_Both=y
#PRE_Res_Comment=RemoveShowDesktopButton
#PRE_Res_Description=移除显示桌面按钮
#PRE_Res_Fileversion=1
#PRE_Res_LegalCopyright=copyright?2019 蓝点lilac
#PRE_Res_requestedExecutionLevel=None
#PRE_Res_Field=LegalTrademarks|蓝点lilac
#PRE_Res_Field=CompanyName|蓝点lilac
#Obfuscator_Parameters=/cs=1 /cn=1 /cf=1 /cv=1 /sf=1 /sv=1 /sci=1
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****

$g_szVersion = "RemoveShowDesktopButton"
If WinExists($g_szVersion) Then Exit
AutoItWinSetTitle($g_szVersion)

#include <Constants.au3>
Opt("TrayMenuMode", 3)

$hwnd = WinGetHandle("[CLASS:Shell_TrayWnd]", "")
Local $iPath = EnvGet("APPDATA") & "\BluePointLilac\RemoveShowDesktopButton\"
If @ScriptFullPath =$iPath & "RemoveShowDesktopButton.exe" Then
	ControlHide($hwnd, "", "TrayShowDesktopButtonWClass1")
	TraySetState(1)
	TraySetState(2)
	Exit
EndIf

Example()
Func Example()
	Local $iRunMenu = TrayCreateMenu("启动项")
	Local $iRun = TrayCreateItem("开机自启动",$iRunMenu)
	TrayCreateItem("",$iRunMenu)
	Local $iBack = TrayCreateItem("启动后退出",$iRunMenu)
	TrayCreateItem("")
	Local $iHide = TrayCreateItem("隐藏按钮")
	TrayCreateItem("")
	Local $iShow = TrayCreateItem("显示按钮")
	TrayCreateItem("")
	Local $iExit = TrayCreateItem("退出")

	TraySetState(1) ; Show the tray menu.
	TraySetToolTip("移除显示桌面按钮" & Chr(10) & "作者:蓝点lilac")

	Local $iBoot = RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "RemoveShowDesktopButton")

	If FileExists($iBoot) Then
		TrayItemSetState($iRun, $TRAY_CHECKED)
		TrayItemSetState($iBack,$TRAY_ENABLE)
		If $iBoot =$iPath & "RemoveShowDesktopButton.exe" Then
			TrayItemSetState($iBack, $TRAY_CHECKED)
		Else
			TrayItemSetState($iBack, $TRAY_UNCHECKED)
		EndIf
	Else
		TrayItemSetState($iRun, $TRAY_UNCHECKED)
		TrayItemSetState($iBack,$TRAY_DISABLE)
	EndIf

	TraySetClick(8) ; Show the tray menu when the mouse if hovered over the tray icon.
	While 1
		Switch TrayGetMsg()
			Case $iHide
				ControlHide($hwnd, "", "TrayShowDesktopButtonWClass1")
				TraySetState(2)
				TraySetState(1)
			Case $iShow
				ControlShow($hwnd, "", "TrayShowDesktopButtonWClass1")
				TraySetState(2)
				TraySetState(1)
			Case $iRun
				If TrayItemGetState($iRun)=68 Then
					RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "RemoveShowDesktopButton", "REG_SZ", @ScriptFullPath)
					TrayItemSetState($iRun, $TRAY_CHECKED)
					TrayItemSetState($iBack, $TRAY_ENABLE)
				ElseIf TrayItemGetState($iRun)=65 Then
					RegDelete("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "RemoveShowDesktopButton")
					TrayItemSetState($iRun, $TRAY_UNCHECKED)
					TrayItemSetState($iBack, $TRAY_DISABLE)
					TrayItemSetState($iBack, $TRAY_UNCHECKED)
				EndIf

			Case $iBack
				If TrayItemGetState($iBack)=68 Then
					TrayItemSetState($iBack, $TRAY_CHECKED)
					FileCopy(@ScriptFullPath, $iPath, 9)
					FileMove($iPath & @ScriptName,$iPath & "RemoveShowDesktopButton.exe",1)
					RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "RemoveShowDesktopButton", "REG_SZ", $iPath & "RemoveShowDesktopButton.exe")
				ElseIf TrayItemGetState($iBack)=65 Then
					RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "RemoveShowDesktopButton", "REG_SZ", @ScriptFullPath)
					TrayItemSetState($iBack, $TRAY_UNCHECKED)
					FileDelete($iPath & "RemoveShowDesktopButton.exe")
				EndIf
			Case $iExit
				ExitLoop
		EndSwitch
	WEnd
EndFunc

  

原文地址:https://www.cnblogs.com/BluePointLilac/p/11701158.html

时间: 2024-11-03 22:37:45

移除任务栏右端"显示桌面"按钮-AutoIt的相关文章

Ubuntu快速显示桌面的方法

在Ubuntu环境下,按下Ctrl+D就能最小化所有窗口,立刻显示桌面,类似xp下的显示桌面按钮功能. 不过这是需要经过快捷键设置的.以下是设置方法: 1.找到"系统设置" 2.进入"快捷键",找到导航->隐藏所有正常窗口,按自己想要的快捷键修改即可,我使用的是ctrl+D Ubuntu快速显示桌面的方法,布布扣,bubuko.com

Mac使用技巧之快速显示桌面

Windows下的"显示桌面"已经深入人心了,虽然Mac下没有相似的按钮,但Mac同样有简便的方法来显示桌面 1.快捷键 1.1使用快捷键Command + F3 快速显示桌面,再按一次回到应用程序 1.2使用快捷键 Fn+F11 快速显示桌面,再按一次回到应用程序 2.如何更改快捷键 2.1点击菜单栏上的 苹果小图标下的"系统偏好设置" 2.2在"个人"栏里找到"Mission Control",或者使用搜索框搜索 2.3在

centOS7 添加自定义快捷键(启动terminal,显示桌面等)

centos7中不自带启动终端的快捷键,可以自定义添加. 点击右上角的用户名,点击设置,在设置面板点击键盘,选择快捷键选项卡进入快捷键设置界面. 点击“+”添加快捷键.名称自定义(如"启动终端"),命令栏中输入:/usr/bin/gnome-terminal,即终端程序的地址. 若要实现winows下“显示桌面”的快捷键,可在快捷键面板下找到“导航”,设置“隐藏所有正常窗口”的快捷键. 若要实现windows下“打开计算机”的快捷键,可在快捷键面板下找到“启动器”,修改“主文件夹”的快

Excel在任务栏中只显示一个窗口的解决办法

Excel在任务栏中只显示一个窗口的解决办法 以前朋友遇到过这个问题,这次自己又遇到了,习惯了以前的那种在任务栏中显示全部窗口,方便用Alt+Tab键进行切换. 如果同时打开许多Excel工作簿,在桌面任务栏中通常会显示多个工作簿窗口按钮.如果任务栏只中显示了一个Excel窗口按钮,所有的工作簿窗口只出现在Excel程序窗口内部,可能是相关的设置被改动了,可以通过下面方法改回设置: 在Excel 2003中单击菜单“工具→选项”,选择“视图”选项卡,选择“任务栏中的窗口”. 在Excel 200

取右端4到7位

题目:取一个整数a从右端开始的4-7位. public static void main(String[] args) { int num = 465897; String r = Integer.toBinaryString(num); System.out.println("整数二进制值:"+r); int num4 = num>>4; String intr = Integer.toBinaryString(num4); //二进制下标从零开始,即移除0-3位 Sys

Lodop条形码竖条和值右端不对齐的解决方法

当Lodop条形码设置的宽度比较短,数值比较多的时候,会出现条码的竖条和右端不对齐.个人测试了一下,发现解决办法有三种:1.增加条形码的宽度.2.隐藏条码本身的值,用text文本代替.3.修改条形码下方数值的大小.默认的数值文字大小是9,缩小后可以显示在条码下方,和右端对齐,就是文字会比较小,比较条码本身设置的比较小.测试代码: <head> <meta http-equiv="Content-Type" content="text/html; charse

文件打开后任务栏里面不显示打开的文件名称

打开EXCEL文件时发现任务栏里面不显示打开文件的名称,当时的任务栏没有设置为自动隐藏,这就奇怪了.问度娘,说CTRL+ALT+DELETE打开任务管理器,新建任务,试了一下还是没有解决,最后没办法,在任务管理器里面把一些不需要的进程给结束了,当我把IE浏览器的进程结束后,任务栏立马就显示出刚才打开文件的名称.怪哉!没搞清楚他们之间的原因,但总归解决了问题,此法供大家参考! 文件打开后任务栏里面不显示打开的文件名称,布布扣,bubuko.com

取一个整数a从右端开始的4~7位

题目:取一个整数a从右端开始的4-7位. 程序分析:可以这样考虑: (1)先使a右移4位. (2)设置一个低4位全为1,其余全为0的数.可用~(~0 < <4) (3)将上面二者进行&运算. 1 package com.li.FiftyAlgorthm; 2 3 import java.util.Scanner; 4 5 public class FS { 6 public static void main(String[] args) { 7 Scanner s = new Scan

java显示本地磁盘所有盘符,显示桌面路径

import java.io.File; import javax.swing.filechooser.FileSystemView; /** 显示本地磁盘根盘符,显示桌面路径 */ public class RDDemo { static File[] files; public static void main(String[] args) { FileSystemView sys = FileSystemView.getFileSystemView(); files = sys.getRo