Общение > О разном по чуть-чуть
Редактирование меню "Создать"
(1/1)
KREKER12345:
Удаление пунктов меню "Создать":
Предположим нужно удалить пункт контекстного меню, который создаёт файл с расширением *.bmp. Решение сводится к созданию файла реестра:
Спойлер: Windows Registry Editor Version 5.00
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.bmp\ShellNew]
Добавление пунктов в меню "Создать":
Для добавления пунктов помимо применения файлов реестра нужно будет создать в папке WINDOWS папку ShellNew, и закинуть туда файлы, по образцу которых будет создаваться новый файл. Образцы файлов - в прикреплённом архиве.
Файл реестра(*.reg): Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.reg]
@="regfile"
[HKEY_CLASSES_ROOT\.reg\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"
[HKEY_CLASSES_ROOT\.reg\ShellNew]
"FileName"="RegFile1.reg"
[HKEY_CLASSES_ROOT\regfile]
@="Файл реестра"
"EditFlags"=dword:00100000
"BrowserFlags"=dword:00000008
Командный файл(*.bat): Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.bat]
@="batfile"
[HKEY_CLASSES_ROOT\.bat\ShellNew]
"FileName"="BATFile1.bat"
[HKEY_CLASSES_ROOT\batfile]
@="Пакетный файл MS-DOS"
"EditFlags"=dword:00100000
"BrowserFlags"=dword:00000008
Текстовый файл(*.txt): Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.txt]
@="txtfile"
"PerceivedType"="text"
"Content Type"="text/plain"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.txt\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.txt\ShellNew]
"NullFile"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\txtfile]
@="Текстовый документ"
"FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\
00,6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,\
32,00,5c,00,6e,00,6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,\
00,2c,00,2d,00,34,00,36,00,39,00,00,00
"EditFlags"=dword:00010000
"BrowserFlags"=dword:00000008
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\txtfile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,\
65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,00,35,\
00,32,00,00,00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\txtfile\shell]
@="open"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\txtfile\shell\open]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\txtfile\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\
54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\
00
Документ Word 2003(*.doc): Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.doc]
@="OfficeWord"
[HKEY_CLASSES_ROOT\.doc\PersistentHandler]
@="{98de59a0-d175-11cd-a7bd-00006b827d94}"
[HKEY_CLASSES_ROOT\.doc\ShellNew]
"FileName"="Word2003.doc"
[HKEY_CLASSES_ROOT\OfficeWord]
"EditFlags"=dword:00010000
"BrowserFlags"=dword:00000008
@="Документ Word 2003"
[HKEY_CLASSES_ROOT\OfficeWord\DefaultIcon]
@="C:\\WINDOWS\\ShellNew\\OfficeIcon.dll, 1"
; Для открывания портабельным MS Office:
[HKEY_CLASSES_ROOT\OfficeWord\shell]
@="Open"
[HKEY_CLASSES_ROOT\OfficeWord\shell\Open]
[HKEY_CLASSES_ROOT\OfficeWord\shell\Open\command]
@="D:\\PORTABLE\\Microsoft Office 97\\Microsoft Word.exe \"%1\""
Документ Word 2007(*.docx): Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.docx]
@="OfficeWord2007"
[HKEY_CLASSES_ROOT\.docx\ShellNew]
"FileName"="Word2007.docx"
[HKEY_CLASSES_ROOT\.docx\PersistentHandler]
@="{D3B41FA1-01E3-49AF-AA25-1D0D824275AE}"
[HKEY_CLASSES_ROOT\OfficeWord2007]
"EditFlags"=dword:00010000
"BrowserFlags"=dword:00000008
@="Документ Word 2007"
[HKEY_CLASSES_ROOT\OfficeWord2007\DefaultIcon]
@="C:\\WINDOWS\\ShellNew\\OfficeIcon.dll, 2"
; Для открывания портабельным MS Office:
[HKEY_CLASSES_ROOT\OfficeWord2007\shell]
@="Open"
[HKEY_CLASSES_ROOT\OfficeWord2007\shell\Open]
[HKEY_CLASSES_ROOT\OfficeWord2007\shell\Open\command]
@="D:\\PORTABLE\\Microsoft Office 97\\Microsoft Word.exe \"%1\""
Что мне сделать не удалось - разделить иконки для Word 2003 и Word 2007, иконки одинаковые. Всё остальное работает.
CreateMenu.rar (79.38 кБ - загружено 325 раз.)
KREKER12345:
Разделить иконки разных версий MS Word можно попробовать вручную через Свойства папки:
Ключевой (неприятный) момент здесь - когда пытаешься выбрать программу для запуска через "Открыть с помощью" важным фактором является какой именно версией MS Office ты собираешься его открыть. В некоторых случаях на все типы открываемых файлов устанавливается одна иконка. Если кто-то не понял - поясню: Одна иконка устанавливается на файлы *.doc, *.docx, *.xls, *.xlsx.
Неудивительно, если пытаешься сделать то, что не предусмотрено самими разработчиками MS Office. А именно - стандартными средствами нельзя (например) установить разные иконки для файлов *.doc и *.docx.
Рекомендуемый безглючный пакет MS Office - здесь
KREKER12345:
Проблема с (разными) иконками для файлов *.doc и *.docx решена с помощью файла KiconLib.dll, вытащенного из старого доброго KMPlayer-а. Этот (доработанный) файл нужно закинуть в WINDOWS\system32, после чего применить БАТ-ник и файл реестра:
*.bat: reg add "HKLM\SOFTWARE\Classes\.DOC" /f /ve /t REG_SZ /d "KMPlayer.DOC"
reg add "HKLM\SOFTWARE\Classes\.DOCX" /f /ve /t REG_SZ /d "KMPlayer.DOCX"
reg add "HKLM\SOFTWARE\Classes\.XLS" /f /ve /t REG_SZ /d "KMPlayer.XLS"
reg add "HKLM\SOFTWARE\Classes\.XLSX" /f /ve /t REG_SZ /d "KMPlayer.XLSX"
reg add "HKLM\SOFTWARE\Classes\KMPlayer.doc\DefaultIcon" /f /ve /t REG_SZ /d "\"%windir%\system32\KIconLib.dll\",139"
reg add "HKLM\SOFTWARE\Classes\KMPlayer.docx\DefaultIcon" /f /ve /t REG_SZ /d "\"%windir%\system32\KIconLib.dll\",140"
reg add "HKLM\SOFTWARE\Classes\KMPlayer.xls\DefaultIcon" /f /ve /t REG_SZ /d "\"%windir%\system32\KIconLib.dll\",141"
reg add "HKLM\SOFTWARE\Classes\KMPlayer.xlsx\DefaultIcon" /f /ve /t REG_SZ /d "\"%windir%\system32\KIconLib.dll\",142"
reg add "HKLM\SOFTWARE\Classes\KMPlayer.doc\shell\open\command" /f /ve /t REG_SZ /d "\"%systemdrive%\Program Files\Microsoft Office 97 RUS SP1\Microsoft Word.exe\" \"%%1\""
reg add "HKLM\SOFTWARE\Classes\KMPlayer.docx\shell\open\command" /f /ve /t REG_SZ /d "\"%systemdrive%\Program Files\Microsoft Office 97 RUS SP1\Microsoft Word.exe\" \"%%1\""
reg add "HKLM\SOFTWARE\Classes\KMPlayer.xls\shell\open\command" /f /ve /t REG_SZ /d "\"%systemdrive%\Program Files\Microsoft Office 97 RUS SP1\Microsoft Excel.exe\" \"%%1\""
*.reg: Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.doc]
@="KMPlayer.DOC"
[HKEY_CLASSES_ROOT\.doc\PersistentHandler]
@="{98de59a0-d175-11cd-a7bd-00006b827d94}"
[HKEY_CLASSES_ROOT\.doc\ShellNew]
"FileName"="Word2003.doc"
[HKEY_CLASSES_ROOT\KMPlayer.DOC]
"EditFlags"=dword:00010000
"BrowserFlags"=dword:00000008
@="Документ MS Word"
При необходимости - пере-прописать расположение файлов запуска (БАТ-ник) и надпись в самом контекстном меню (файл реестра).
KIconLib.rar (253.02 кБ - загружено 273 раз.)
st1317:
Если нужно только удалить пункт контекстного меню, то достаточно такой проги
Навигация
Перейти к полной версии