标题: [文本处理] 批处理隐藏桌面图标 [打印本页]
作者: yidamw@qq.com 时间: 2024-8-26 10:09 标题: 批处理隐藏桌面图标
请教一下各位大老,怎样把桌面图标用批处理全部隐藏掉。 然后又可以用批处理全部显示出来。
谢谢各位大老
作者: 77七 时间: 2024-8-26 11:36
用nircmd- 隐藏桌面所有图标 nircmd.exe win hide class progman
- 显示桌面所有图标(用以上命令隐藏过后) nircmd.exe win show class progman
复制代码
作者: jyswjjgdwtdtj 时间: 2024-8-26 15:08
本帖最后由 jyswjjgdwtdtj 于 2024-8-26 15:09 编辑
- #powershell
- add-type -typedefinition 'using System.Runtime.InteropServices;
- using System.Timers;
- using System;
-
- public class csclass
- {
- [DllImport("user32.dll")]
- public static extern int ShowWindow(int hwnd, int nCmdShow);
- [DllImport("user32.dll", EntryPoint = "FindWindowExA")]
- private static extern IntPtr FindWindowExA(IntPtr hWndParent, IntPtr hWndChildAfter, string lpszClass, string lpszWindow);
- [DllImport("user32.dll", EntryPoint = "EnumWindows")]
- private static extern int EnumWindows(EnumWindowsProc ewp, IntPtr lParam);
- private delegate bool EnumWindowsProc(IntPtr hWnd, IntPtr lParam);
- public static Timer timer = new Timer();
- public static void Main()
- {
- timer.Interval = 10;
- timer.Enabled = false;
- timer.AutoReset = true;
- IntPtr Fv = IntPtr.Zero;
- EnumWindows((hwnd, lParam) =>
- {
- IntPtr fv = FindWindowExA(hwnd, IntPtr.Zero, "SHELLDLL_DefView", null);
- if (fv != IntPtr.Zero)
- {
- Fv = fv;
- }
- return true;
- }, IntPtr.Zero);
- ShowWindow((int)Fv, 0);
- timer.Elapsed += (s, e) => {
- };
- }
- }'
- [csclass]:Main()
复制代码
若要解除 则将ShowWindow((int)Fv, 0);处0改为1
作者: 蚯蚓传奇 时间: 2024-8-26 21:44
回复 1# yidamw@qq.com
attrib +h +s "%USERPROFILE%\Desktop\*.*"
pause
attrib -h -s "%USERPROFILE%\Desktop\*.*"
作者: aloha20200628 时间: 2024-8-26 23:37
本帖最后由 aloha20200628 于 2024-8-27 10:17 编辑
用修改文件属性 ‘+h’ 方法隐藏桌面图标可能还要两个前置步骤
一是在资源管理器的文件目录显示选项中关闭 ‘显示隐藏文件’
二是修改全部桌面图标的文件属性也许需要管理员权限(win8.1系统实测无此必要)
备注》在 %USERPROFILE%\Desktop\ 下的*.lnk及其文件夹一般都是第三方应用设置或用户自定义的,可用 ‘+h’ 方法隐藏,而系统内置的图标如 ‘回收站’ 等不在其内,须用别法处理...- @echo off &if "%~1" neq "" goto[main]
- :: 检查当前进程是否获取管理员权限
- net session >nul 2>nul
- if %errorlevel% neq 0 (
- echo,申请管理员权限...
- powershell "start -filepath '%~f0' -ArgumentList 1 -verb runas"
- exit/b
- )
- :[main]
- attrib +h "%USERPROFILE%\Desktop\*.*"
- :: 刷新桌面以确保桌面图标隐藏生效(win8.1系统实测无此必要)
- assoc .bat=batfile>nul
- pause&exit/b
复制代码
恢复桌面图标显示须修改代码第10行中 +h 为 -h 即可
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |