标签 windows 下的文章

解决win10任务栏右键失效

原因是什么已经不重要了,大概也许可能是因为在卸载IDM的时候有几个DLL文件无法删除,使用了各种方法删除这几个DLL的句柄占用导致的,也有可能是unlocker软件导致的,也有可能是更新了1709导致的。

现象为:任务栏右键无反应,开始菜单点击无反应(含左右键),ALT+TAB切换任务无反应,全屏远程桌面到其它PC后,本机任务栏始终在在顶端,桌面或者资源浏览器中删除/新增文件后不自动刷新(需要手动刷新或按F5才能显示文件的变更)

解决方案:
网上大多数修改注册表,设置自动刷新的各种方案无效
1.找到系统服务管理控制台(在运行中输入services.msc并运行)
2.找到"UserManager"服务,将启动类型设置为“自动”
3.重启电脑
理论上来说到这一步就解决了,如果还未解决,根据微软知识库中的描述,还可以进行以下步骤的操作:

Press Windows Key + R on your keyboard.
Key in PowerShell and hit Enter.
Right click on the PowerShell icon on the taskbar and select Run as Administrator.
Now paste the following command in the Administrator: Windows PowerShell window and press Enter key:

Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}

NOW for the important part ! Locate to : C:/Users/name/AppData/Local/ and delete the TileDataLayer folder. Should fix everything immediately, no reboot necessary. Let me know how it works for you, it did for me! And remember to clean the recycle bin after you deleted the folder and give it 1min then everything is back to normal !
参考:微软官方问答

windows上自动设置java环境变量的脚本

@echo off

:: TODO:设置java环境变量
:: Author: Gwt
color 02
::设置java的安装路径,可方便切换不同的版本
set input=
set /p "input=请输入java的jdk路径(或回车默认路径为C:\Program Files\Java\jdk1.7.0_71):"
if defined input (echo jdk已设置) else (set input=C:\Program Files\Java\jdk1.7.0_71)
echo jdk路径为%input%
set javaPath=%input%

::如果有的话,先删除JAVA_HOME
wmic ENVIRONMENT where "name='JAVA_HOME'" delete

::如果有的话,先删除ClASS_PATH 
wmic ENVIRONMENT where "name='CLASS_PATH'" delete

::创建JAVA_HOME
wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%javaPath%"

::创建CLASS_PATH
wmic ENVIRONMENT create name="CLASS_PATH",username="<system>",VariableValue=".;%%JAVA_HOME%%\lib\tools.jar;%

%JAVA_HOME%%\lib\dt.jar;"

::在环境变量path中,剔除掉变量java_home中的字符,回显剩下的字符串
call set xx=%Path%;%JAVA_HOME%\jre\bin;%JAVA_HOME%\bin

::echo %xx%

::将返回显的字符重新赋值到path中
wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%xx%"

pause

解释下命令

   @echo off 是关闭回显的,不会显示命令信息 on打开会显示命令信息

  color 02是设置输出文本颜色的,这里是控制命令台输出绿颜色

  set /p "input=请输入命令信息" 是用来接收控制台输入的文本信息的

  if else 是用来做判断 if defined input 是用来判断用户是否输入信息,回车的话,则表示未定义input的值

  echo "输出信息" 是用来显示信息的

  set javaPath=%input% 是用来吧变量input的值赋值给javaPath变量的

  wmic 是提供了批处理的命令,可以方便的操作环境变量值

  删除某一环境变量 就使用 wmic ENVIRONMENT where "name='JAVA_HOME'" delete命令

  创建某一环境变量 使用 wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%javaPath%"命令

      修改某一环境变量 使用 wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="value"

注意事项:

  1、在上述批处理脚本命令中,要严格注意空格和大小写等的输入,不然执行不成功的

  2、要以管理员方式运行命令,不然提示拒绝执行命令的提示