|
Компьютерный форум OSzone.net » Изменение внешнего вида Windows » Оформление Windows XP » Разное - Добавление пользовательских пунктов в контекстное меню (файлы, папки и т.д.) |
|
Разное - Добавление пользовательских пунктов в контекстное меню (файлы, папки и т.д.)
|
Пользователь Сообщения: 132 |
Профиль | Отправить PM | Цитировать
Добрый день форумчане, мне очень нужно узнать, как можно с помощью реестра или другим способом добавить в контекстное меню проводника пункты Показать/скрыть расширение файлов, скрытые файлы и т.д?
А можно и такое чтобы "Создать папку" всегда стояла на первой строке меню? Спасибо всем |
|
------- Отправлено: 02:40, 22-03-2009 |
Пользователь Сообщения: 140
|
Профиль | Отправить PM | Цитировать Особо не вчитывался в тему, но как я понял здесь разбираемся с тем, как в контекстное меню добавить свои пункты. Ну что ж, попробую помочь Вам в решении данного вопроса
Итак, в данном посте рассмотрим решение следующих вопросов: 1) Как добавлять свои пункты в контекстное меню файлов определённого типа (например txt)? 2) Как добавить свои пункты в контекстное меню абсолютно всех файлов? 3) Как добавить свои пункты в контекстное меню корзины? 4) Как создать свой тип файлов и добавить в его контекстное меню определённые пункты и выбрать пункт, который будет использоваться по умолчанию? 5) Как для нескольких типов файлов быстро создать одинаковые пункты в контекстном меню и также быстро изменить их? 6) Как добавлять свои пункты в контекстное меню Мой компьютер? 7) Как добавить свои пункты в контекстное меню только папок? 8) А есть ли программы, для редактирования контекстного меню, и какие?
Примечание: В твиках реестра вместо Можно указать В контекстном меню это будет выглядеть одинакого. Т.е. можно создать подраздел с абсолютно любым названием, а в параметре "(По умолчанию)" указать название, которое будет отображаться. Также довольно лёгкий способ изменения контекстного меню - это открыть любую папку, выбрать в меню "Сервис" пункт "Свойства папки...", перейти на вкладку "Типы файлов", выбрать там нужный тип файлов, нажать на кнопку "Дополнительно" и в открывшемся окне редактировать контекстное меню и иконку файлов. Если же Вам нужен будет твик ваших изменений, то я думаю если вы внимательно читали данный мануал, то Вы сможете легко его найти в реестре. Или просто нажимаем Ctrl+F и вводим например название любого созданного Вами пункта контекстного меню. После чего экспортируем раздел реестра. PS: Надеюсь мануал всем прочитавшим его будет понятен PPS: Пока всё это писал, нашёл на форуме тему Интерфейс - Настройка контекстного меню файлов/папок/дисков .:[все вопросы]:., в которой обсуждается тоже самое, но всё же напишу здесь, хотя надо бы наверно там. |
------- Отправлено: 00:52, 07-05-2009 | #71 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
GEEK Сообщения: 730
|
Профиль | Сайт | Отправить PM | Цитировать Stayshayder, ого, Спасибо! Это тянет на статью в учебник по Автоматической установке Windows
|
------- Отправлено: 01:00, 07-05-2009 | #72 |
Пользователь Сообщения: 132
|
Профиль | Отправить PM | Цитировать Stayshayder, спасибо
|
------- Отправлено: 22:24, 07-05-2009 | #73 |
9119
Сообщения: n/a |
Народ!подскажите пожалуйста.
Как добавить нужный пункт в контекстное меню "Создать".....??? Укажите просто на нужную ветку реестра. А если конкретно то хочу добавить пункт создать батник.. |
Последний раз редактировалось 9119, 12-07-2009 в 20:47. Отправлено: 18:18, 12-07-2009 | #74 |
Старожил Сообщения: 418
|
Профиль | Отправить PM | Цитировать 9119
Цитата 9119:
|
|
------- Отправлено: 21:41, 12-07-2009 | #75 |
Старожил Сообщения: 430
|
Профиль | Отправить PM | Цитировать 9119, Запусти этот файл (во вложении) и будет то что нужно...Кроме твика реестра,нужно еще создать батник(образец который будет создаватся из пункта создать) и поместить его в папку %windir%\SHELLNEW...
P.S.Пункт появится после нажатия правой клавиши мыши-обновить, на рабочем столе. |
Отправлено: 22:47, 12-07-2009 | #76 |
Сообщения: 3652
|
Профиль | Сайт | Отправить PM | Цитировать Цитата E-mpty:
Цитата 9119:
Применяем твик из myCustom Или .reg-файлом P.S.: не забываем менять .расширение и Образец.расширение |
||
------- Отправлено: 22:53, 12-07-2009 | #77 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Цитата:
- Теперь reg файлы не нужны. И сам скрипт может лежать где угодно, не обязательно в System32 - Запись в реестр ведется для текущего юзера, ибо не всегда есть права админа - Пункт меню добавляется только в контекстное меню открытой папки - так удобнее и логичнее, но в XP вроде не работает. Там только по контекстному меню папки можно. Но я на Win 7 сижу. На висте тоже должно работать. - Добавлена иконочка Идея такая: Запускаем скрипт. Он смотрит, если ветка "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden" не существует, то создает ее, иначе удаляет. В реестр записывает путь к самому себе с параметром (любым, я выбрал "-argument"). Затем, когда пользователь кликает по нашему пункту меню, запускается скрипт, ему передается параметр, скрипт понимает, что если есть параметр, то надо не удалить раздел, а изменить запись в нем (извиняюсь за кривое объяснение) Dim WSHShell Set WSHShell = WScript.CreateObject("WScript.Shell") ' Если скрипт запущен с каким-то параметром, то... If WScript.Arguments.Count>0 Then ' Проверяем значение в реестре и в зависимости от него либо отображаем скрытые папки, либо наоборот убираем. If WSHShell.RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ShowSuperHidden") = 1 then ' Скрываем папки WSHShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ShowSuperHidden", "0", "REG_DWORD" WSHShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Hidden", "2", "REG_DWORD" ' Добавляем пункт в контекстное меню ' В поле command прописываем путь до текущего скрипта с параметром (не важно каким, главное, чтобы он был), чтобы.. ' ..скрипт понял, что ему нужно не удалить ветку реестра, а изменить WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden\", "Отображать скрытые", "REG_SZ" WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden\command\", "WScript.exe """&WScript.ScriptFullName&""" -argument", "REG_SZ" ' Обновляем окно эксплорера, чтобы увидеть результат WSHShell.SendKeys "{F5}" Else ' Скрываем папки WSHShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ShowSuperHidden", "1", "REG_DWORD" WSHShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Hidden", "1", "REG_DWORD" ' Добавляем пункт в контекстное меню WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden\", "Не отображать скрытые", "REG_SZ" WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden\command\", "WScript.exe """&WScript.ScriptFullName&""" -argument", "REG_SZ" ' Обновляем окно эксплорера, чтобы увидеть результат WSHShell.SendKeys "{F5}" End If Else ' Если запись в реестре есть, то удаляем наш раздел If WSHShell.Run("cmd.exe /C REG QUERY ""HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden""", 0, True)=0 Then WSHShell.Run "cmd /C REG DELETE ""HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden"" /f", 0 Else ' Иначе запускаем этот скрипт с параметром (какой параметр - значения не имеет, главное его наличие) WSHShell.Run """"&WScript.ScriptFullName&""" -argument" ' И еще добавим иконочку для красоты WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\SuperHidden\Icon", "%SystemRoot%\System32\shell32.dll,55", "REG_SZ" End If End if Set WSHShell = Nothing WScript.Quit(0) |
|
Отправлено: 16:20, 20-07-2009 | #78 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать То же самое, только для расширений файлов (Скрыть/Показать)
Dim WSHShell Set WSHShell = WScript.CreateObject("WScript.Shell") ' Если скрипт запущен с каким-то параметром, то... If WScript.Arguments.Count>0 Then ' Проверяем значение в реестре и в зависимости от него либо отображаем расширения, либо наоборот скрываем. If WSHShell.RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt") = 0 then ' Скрываем расширения WSHShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt", "1", "REG_DWORD" ' Добавляем пункт в контекстное меню ' В поле command прописываем путь до текущего скрипта с параметром (не важно каким, главное, чтобы он был), чтобы.. ' ..скрипт понял, что ему нужно не удалить ветку реестра, а изменить WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\HideFileExt\", "Показать расширения", "REG_SZ" WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\HideFileExt\command\", "WScript.exe """&WScript.ScriptFullName&""" -argument", "REG_SZ" ' Обновляем окно эксплорера, чтобы увидеть результат WSHShell.SendKeys "{F5}" Else ' Показываем расширения WSHShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt", "0", "REG_DWORD" ' Добавляем пункт в контекстное меню WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\HideFileExt\", "Скрыть расширения", "REG_SZ" WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\HideFileExt\command\", "WScript.exe """&WScript.ScriptFullName&""" -argument", "REG_SZ" ' Обновляем окно эксплорера, чтобы увидеть результат WSHShell.SendKeys "{F5}" End If Else ' Если запись в реестре есть, то удаляем наш раздел If WSHShell.Run("cmd.exe /C REG QUERY ""HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\HideFileExt""", 0, True)=0 Then WSHShell.Run "cmd /C REG DELETE ""HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\HideFileExt"" /f", 0 Else ' Иначе запускаем этот скрипт с параметром (какой параметр - значения не имеет, главное его наличие) WSHShell.Run """"&WScript.ScriptFullName&""" -argument" ' И еще добавим иконочку для красоты WSHShell.RegWrite "HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\HideFileExt\Icon", "%SystemRoot%\System32\shell32.dll,69", "REG_SZ" End If End if Set WSHShell = Nothing WScript.Quit(0) |
Отправлено: 16:53, 20-07-2009 | #79 |
In reserve... Сообщения: 6918
|
Профиль | Отправить PM | Цитировать 9119, По поводу меню ''Создать - BAT File''...
Чего городить огород? ''Создать - Текстовый файл'', далее пишешь в нём нужный код, сохраняешь и меняешь расширение на BAT или CMD. Или нужен новый файл уже с куском кода? |
Отправлено: 18:01, 20-07-2009 | #80 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Интерфейс - Пропадание в меню "создать" некоторых пунктов и ещё пару вопросов | Rockon | Microsoft Windows 2000/XP | 5 | 16-06-2009 15:40 | |
Ошибка - Периодически не открываются пункты меню, папки, файлы | Adgost | Microsoft Windows 2000/XP | 10 | 02-12-2008 16:57 | |
Интерфейс - контекстное меню папки | nureke | Microsoft Windows 2000/XP | 1 | 05-04-2008 09:11 | |
Добавление в контекстное меню | di2blo | Автоматическая установка Windows 2000/XP/2003 | 4 | 24-03-2008 08:56 | |
Удаление пунктов меню. | andreyxp | Microsoft Windows 2000/XP | 2 | 16-08-2006 23:35 |
|