lujd0429 发表于 2012-3-30 22:22:58

Win7 快捷方式小箭头去除/还原工具

本帖最后由 lujd0429 于 2012-9-28 14:23 编辑

本人学习AutoIt不久,用仅学会的一点皮毛做出了一个小软件,共享给大家使用!



源码+作品地址:

源码如下
#NoTrayIcon
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#PRE_Icon=logo.ico
#PRE_Outfile=C:\Users\LJD\Desktop\Win小箭头去除还原工具.exe
#PRE_Res_Comment=Win7小箭头去除\还原工具
#PRE_Res_Description=这是一个可以自由去除和还原Win7系统快捷方式小箭头的工具^_^
#PRE_Res_Fileversion=1.0.0.0
#PRE_Res_LegalCopyright=lujd0429(www.autoitx.com)
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
#include <GUIConstants.au3>
#include <Process.au3>
GUICREATE ( "Win7小箭头去除/还原工具" , 382 , 250 , - 1 , - 1 )
GUISETICON ( ".\logo.ico" )
GUISETBKCOLOR ( 16247543 )
$P = GUICTRLCREATEPIC ( ".\Pic.jpg" , 2 , 1 , 378 , 86 )
GUICTRLCREATEGROUP ( "" , 18 , 98 , 345 , 120 )
$BUTTON1 = GUICTRLCREATEBUTTON ( "去除小箭头" , 36 , 113 , 107 , 96 )
GUICTRLSETCURSOR ( - 1 , 0 )
$BUTTON2 = GUICTRLCREATEBUTTON ( "还原小箭头" , 238 , 113 , 107 , 96 )
GUICTRLSETCURSOR ( - 1 , 0 )
GUICTRLCREATEGROUP ( "" , - 99 , - 99 , 1 , 1 )
GUICTRLCREATELABEL ( "本软件由" , 18 , 224 , 48 , 40 )
$BUTTONTEXT = GUICTRLCREATELABEL ( "lujd0429" , 69 , 224 , 72 , 40 )
GUICTRLSETCOLOR ( - 1 , 16711680 )
GUICTRLSETCURSOR ( - 1 , 0 )
GUICTRLCREATELABEL ( "制作" , 120 , 224 , 45 , 40 )
GUICTRLCREATELABEL ( "2012年3月27日" , 283 , 224 , 99 , 40 )
GUISETSTATE ( @SW_SHOW )

$Path = "C:\Windows\Temp"
FileInstall(".\Pic.jpg",$Path&"\Pic.jpg",1)
FilesetAttrib($Path&"\Pic.jpg","+H",1)
if $p == 0 Then
   GUICTRLCREATEPIC ( $Path&"\Pic.jpg" , 2 , 1 , 378 , 86 )
   Endif
IF @OSARCH == "X86" THEN
LOCAL $VAR = REGREAD ( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" , "29" )
ELSE
        LOCAL $VAR = REGREAD ( "HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" , "29" )
ENDIF
IF ( $VAR == "" AND @ERROR ) THEN
CONTROLDISABLE ( "Win7小箭头去除/还原工具" , "还原小箭头" , "Button3" )
ELSEIF @ERROR == 0 THEN
CONTROLDISABLE ( "Win7小箭头去除/还原工具" , "去除小箭头" , "Button2" )
ENDIF




WHILE 1
$MSG = GUIGETMSG ( )
SELECT
CASE $MSG = $BUTTONTEXT
SHELLEXECUTE ( "http://www.autoitx.com/space-uid-7658831.html" )
CASE $MSG = $BUTTON1
DELETE ( )
CASE $MSG = $BUTTON2
RESET ( )
CASE $MSG = $GUI_EVENT_CLOSE
$POS = WINGETPOS ( "Win7小箭头去除/还原工具" , "" )
WINMOVE ( "Win7小箭头去除/还原工具" , "" , 1490 , $POS [ 1 ] , $POS [ 2 ] , $POS [ 3 ] , 3 )
FileDelete($Path&"\Pic.jpg")
EXIT
ENDSELECT
WEND




FUNC DELETE ( )
IF @OSARCH == "X86" THEN
FILEINSTALL ( ".\Empty.ico" , "C:\Windows\Empty.ico" )
REGWRITE ( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" , "29" , "REG_SZ" , "C:\Windows\Empty.ico,0" )
ELSE
FILEINSTALL ( ".\Empty.ico" , "C:\Windows\Empty.ico" )
REGWRITE ( "HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" , "29" , "REG_SZ" , "C:\Windows\Empty.ico,0" )
ENDIF
IF MSGBOX ( 0 , "提示" , "删除小箭头成功!" ) = 1 THEN
PROCESSCLOSE ( "explorer.exe" )
Sleep(90)
IF NOT ( PROCESSEXISTS ( "explorer.exe" ) == 0 ) THEN
_RunDos("taskkill /f /im explorer.exe")         ; 此处用于检测并达到指定结束Explorer。exe的目的
_RunDos("start explorer.exe")
Else
RUN ( @SYSTEMDIR & "\explorer.exe" )
Endif
IF PROCESSEXISTS ( "explorer.exe" ) == 0 THEN
_RunDos("start explorer.exe")   
ENDIF
ENDIF
CONTROLENABLE ( "Win7小箭头去除/还原工具" , "还原小箭头" , "Button3" )
CONTROLDISABLE ( "Win7小箭头去除/还原工具" , "去除小箭头" , "Button2" )
ENDFUNC

FUNC RESET ( )
FILEDELETE ( "C:\Windows\Empty.ico" )
IF @OSARCH == "X86" THEN
REGDELETE ( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" )
ELSE
REGDELETE ( "HKLM64\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" )
ENDIF
IF MSGBOX ( 0 , "提示" , "恢复小箭头成功!" ) = 1 THEN

PROCESSCLOSE ( "explorer.exe" )
IF NOT ( PROCESSEXISTS ( "explorer.exe" ) == 0 ) THEN         
    _RunDos("taskkill /f /im explorer.exe")      ; 此处用于检测并达到指定结束Explorer。exe的目的
    _RunDos("start explorer.exe")
Else
    RUN ( @SYSTEMDIR & "\explorer.exe" )
Endif
IF PROCESSEXISTS ( "explorer.exe" ) == 0 THEN
_RunDos("start explorer.exe")
ENDIF
ENDIF
CONTROLENABLE ( "Win7小箭头去除/还原工具" , "去除小箭头" , "Button2" )
CONTROLDISABLE ( "Win7小箭头去除/还原工具" , "还原小箭头" , "Button3" )
ENDFUNC

80ren 发表于 2012-3-31 00:52:31

支持LZ新作

lujd0429 发表于 2012-3-31 08:23:58

回复 2# 80ren

多谢支持!!呵呵{:face (411):}

whitehead 发表于 2012-3-31 22:08:17

支持LZ新作

地平线 发表于 2012-4-5 23:38:59

LZ能提供源码参考一下吗?现在学GUI界面,很多地方弄不懂。

461767057 发表于 2012-4-18 16:32:18

谢谢分享,试试了。

fjvip 发表于 2012-4-24 19:31:54

希望能开源学习一下你的界面。

fjvip 发表于 2012-4-24 19:32:19

希望能开源学习一下你的界面。

fjvip 发表于 2012-4-24 19:32:19

希望能开源学习一下你的界面。

xyy0451 发表于 2012-4-30 06:35:37

行不行?前段时间下载一个,不好使。

lujd0429 发表于 2012-4-30 09:20:53

LZ能提供源码参考一下吗?现在学GUI界面,很多地方弄不懂。
地平线 发表于 2012-4-5 23:38 http://www.autoitx.com/images/common/back.gif


不好意思上次没看到你的回复,现已帖源码!{:face (411):}

lujd0429 发表于 2012-4-30 09:22:06

回复 9# fjvip

已贴源码!初学时所做写的不好!{:face (288):}

lujd0429 发表于 2012-4-30 09:22:57

行不行?前段时间下载一个,不好使。
xyy0451 发表于 2012-4-30 06:35 http://www.autoitx.com/images/common/back.gif


试试不就知道了!{:face (411):}

xyhqqaa 发表于 2012-4-30 14:49:16

谢谢分享。。。

执迷不悟 发表于 2012-5-14 21:46:17

{:face (411):}XP能用吗
页: [1] 2
查看完整版本: Win7 快捷方式小箭头去除/还原工具