找回密码
 加入
搜索
查看: 3409|回复: 5

[系统综合] 修改桌面显示IE浏览器,刷新explorer.exe后弹出我的文档,求助

  [复制链接]
发表于 2011-2-27 19:40:10 | 显示全部楼层 |阅读模式
;还原WINXP_SP3桌面IE图标
Dim $HideDesktopIcons[2]
$HideDesktopIcons[0] = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel"
$HideDesktopIcons[1] = "{871C5380-42A0-1069-A2EA-08002B30309D}"
If RegRead($HideDesktopIcons[0],$HideDesktopIcons[1]) = "1" Then RegWrite($HideDesktopIcons[0],$HideDesktopIcons[1],"REG_DWORD",0)

Dim $NoInternetIcon[2]
$NoInternetIcon[0] = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer"
$NoInternetIcon[1] = "NoInternetIcon"
If RegRead($NoInternetIcon[0],$NoInternetIcon[1]) = "1" Then RegWrite($NoInternetIcon[0],$NoInternetIcon[1],"REG_DWORD",0)

;刷新桌面图标
Do
        ProcessClose("explorer.exe")
Until Not ProcessExists("explorer.exe")
Run("gpupdate /force","",@SW_HIDE)
WINXP_sp3系统,通过注册表显示原始IE浏览器图标,寻找多个刷新注册表、组策略、注册表方式无效,最后使用重启"explorer.exe"才生效,但是重启"explorer.exe"后会自动弹出我的文档,求大家指点下。
发表于 2011-2-27 21:11:25 | 显示全部楼层
刷新explorer.exe
_Update_Explorer()

Func _Update_Explorer()
        Local $bOld = Opt("WinSearchChildren", True)
        Local $a = WinList("[CLASS:SHELLDLL_DefView]")
        For $i = 0 To UBound($a) - 1
                DllCall("user32.dll", "long", "SendMessage", "hwnd", $a[$i][1], "int", 0x111, "int", 28931, "int", 0)
        Next
        Opt("WinSearchChildren", $bOld)
EndFunc   ;==>_Update_Explorer
 楼主| 发表于 2011-2-27 22:06:17 | 显示全部楼层
刷新explorer.exe
lixiaolong 发表于 2011-2-27 21:11



    这个方法是可以刷新explorer.exe 但是桌面IE图标不能显示

反复测试
使用ProcessClose("explorer.exe")则回自动弹出我的文档
使用run("taskkill /f /im explorer.exe")则不会弹出我的文档

但是不想加载cmd.exe,有什么其他办法或者api函数重启explorer.exe进程的不?
发表于 2011-2-28 00:14:45 | 显示全部楼层
本帖最后由 lixiaolong 于 2011-2-28 00:17 编辑

回复 3# qq724174

我这里使用_Update_Explorer()可以显示.
我想应该是系统的问题.

还有这个注册表没有用
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
"NoInternetIcon"

试试这个
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu", "{871C5380-42A0-1069-A2EA-08002B30309D}", "REG_DWORD", 0x00000000)
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel", "{871C5380-42A0-1069-A2EA-08002B30309D}", "REG_DWORD", 0x00000000)

_Update_Explorer()

Func _Update_Explorer()
        Local $bOld = Opt("WinSearchChildren", True)
        Local $a = WinList("[CLASS:SHELLDLL_DefView]")
        For $i = 0 To UBound($a) - 1
                DllCall("user32.dll", "long", "SendMessage", "hwnd", $a[$i][1], "int", 0x111, "int", 28931, "int", 0)
        Next
        Opt("WinSearchChildren", $bOld)
EndFunc   ;==>_Update_Explorer
 楼主| 发表于 2011-2-28 01:19:56 | 显示全部楼层
回复  qq724174

我这里使用_Update_Explorer()可以显示.
我想应该是系统的问题.

还有这个注册表没有 ...
lixiaolong 发表于 2011-2-28 00:14



    测试后依然无用,非得重启Explorer.exe进程才可以刷新出来
发表于 2011-2-28 02:09:17 | 显示全部楼层
回复 5# qq724174

这我就不知道原因了,我的电脑上没有问题...
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-21 13:43 , Processed in 0.089474 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表