Добавление пункта "Создать папку" в контекстное меню на первое место
Как работает:
Запускаем скрипт. В контекстном меню открытой папки на первом месте появляется пункт "Создать папку". Все, можно пользоваться. Чтобы удалить этот пункт, нужно еще раз запустить этот скрипт.
Код:
Set WShell = CreateObject("WScript.Shell")
' Если скрипт запущен с параметром, то..
If WScript.Arguments.Count>0 Then
Randomize Timer
' Запрашиваем имя папки. В качестве стандартного имени будет "Новая Папка NN", где NN - случайное число от 10 до 99
Name=InputBox("Имя папки:", "Создать папку", "Новая Папка "&Int((99-10+1)*Rnd+10))
' Если пользователь нажал кнопку Отмена, то выходим из скрипта
If Name="" Then WScript.Quit
' Создаем папку с указанным именем
WShell.run "cmd /C md """&Name&"""", 0
Else
' Если скрипт запущен без параметров, то..
' Если запись в реестре есть, то удаляем наш раздел
If WShell.Run("cmd.exe /C REG QUERY ""HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Создать папку""", 0, True)=0 Then
WShell.Run "cmd /C REG DELETE ""HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Создать папку"" /f", 0
Else
' Иначе добавляем запись в реестр
' Иконка папки
WShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Создать папку\Icon", "%SystemRoot%\System32\shell32.dll,3", "REG_SZ"
' Ставим наш пункт в самый верх контекстного меню
WShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Создать папку\Position", "Top", "REG_SZ"
' Прописываем действия, которые будут выполняться при клике по нашему пункту меню
WShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Создать папку\command\", "wscript.exe """&WScript.ScriptFullName&""" -folder", "REG_SZ"
End If
End if