Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Новый участник


Сообщения: 29
Благодарности: 1

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: rar new 2.rar
(718 байт, 16 просмотров)

Накатал скриптик на VBS, который смотрит, что у вас написано в реестре по адресу HKEY_CLASSES_ROOT\.txt\ и HKEY_CLASSES_ROOT\.xls\ в ключе (По умолчанию). И добавляет соответственно значению этого ключа ветку HKEY_CLASSES_ROOT\txtfile\shell\NewMenuForTest\ (скорее всего) и HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\NewMenuForTest\ (скорее всего). И записывает там в ключ (По умолчанию) значение "NewMenuForTest". После записи у вас по клику правой кнопкой на файлах с расширением *.xls и *.txt в контекстном меню должна появиться еще одна строка "NewMenuForTest". Потом скрипт удаляет добавленные ветки. Все делается с подтверждением действий.
Проверьте кто-н у себя, появится ли у вас еще одна строка в контекстном меню для обоих типов файлов и напишите результат. Вдруг у вас все нормально.
В скриптике этот код:
Код: Выделить весь код
Option Explicit 

'Объявляем переменные 
Dim WshShell, Root, Res, _
tWay, tKey, tValue, _
xWay, xKey, xValue

Root = "HKEY_CLASSES_ROOT" 'Корень

'Создаем объект WshShell 
Set WshShell = WScript.CreateObject("WScript.Shell") 

'Считываем значение по-умолчанию для ветки HKEY_CLASSES_ROOT\.txt\
tWay = "\.txt\" 'Имя ветки
tKey = "" 'Имя ключа
tValue = WshShell.RegRead(Root & tWay & tKey) 


'Запрос на создание нового ключа и запись в него значения
Res = WshShell.Popup("Создать ключ" & vbCrLf & Root & "\" & tValue & "\shell\NewMenuForTest\" & "(По умолчанию)" & "?",0,_ 
"Работа с реестром",vbQuestion+vbYesNo) 
If Res=vbYes Then 'Нажата кнопка Да 
'Записываем новый ключ 
WshShell.RegWrite Root & "\" & tValue & "\shell\NewMenuForTest\" & "", "NewMenuForTest" 
End If 

'Считываем значение по-умолчанию для ветки HKEY_CLASSES_ROOT\.xls\
xWay="\.xls\" 'Имя ветки
tKey="" 'Имя ключа 
xValue=WshShell.RegRead(Root & xWay & xKey) 

'Запрос на создание нового ключа и запись в него значения
Res=WshShell.Popup("Создать ключ" & vbCrLf & Root & "\" & xValue & "\shell\NewMenuForTest\" & "(По умолчанию)" & "?",0,_ 
"Работа с реестром",vbQuestion+vbYesNo) 
If Res=vbYes Then 'Нажата кнопка Да 
'Записываем новый ключ 
WshShell.RegWrite Root & "\" & xValue & "\shell\NewMenuForTest\" & "", "NewMenuForTest" 
End If 

'Запрос на удаление всех внесенных изменений
Res = WshShell.Popup("Удалить раздел" & vbCrLf & Root & "\" & tValue & "\shell\NewMenuForTest\" & "?",0,"Работа с реестром",vbQuestion+vbYesNo) 
If Res=vbYes Then 'Нажата кнопка Да 
'Удаляем раздел 
WshShell.RegDelete Root & "\" & tValue & "\shell\NewMenuForTest\"
End If 

'Запрос на удаление всех внесенных изменений
Res=WshShell.Popup("Удалить раздел" & vbCrLf & Root & "\" & xValue & "\shell\NewMenuForTest\" &_ 
"?",0,"Работа с реестром",vbQuestion+vbYesNo) 
If Res=vbYes Then 'Нажата кнопка Да 
'Удаляем раздел 
WshShell.RegDelete Root & "\" & xValue & "\shell\NewMenuForTest\"
End If

Отправлено: 18:04, 29-06-2014 | #11