Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 2000/XP » Разное - [решено] Непонятки с контекстным меню "Мой компьютер"

Ответить
Настройки темы
Разное - [решено] Непонятки с контекстным меню "Мой компьютер"

Старожил


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

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


Винду ставил с самопального дистрибутива. Правил дистрибутив с помощью nlite. Там есть возможность добавить в контекстное меню "Мой компьютер" дополнительные пункты. Добавил диспетчер устройств и просмотр служб. После установки ни тот ни другой пункты не срабатывали: На диспетчер устройств получал ответ:" MMC не может открыть файл %systemroot%\SYSTEM32\devmgmt.msc
Возможно файл отсутствует или не является консолью ММС. Возможно нет прав доступа .... и т.д."
А на запуск просмотра служб получал сообщение: "Нет прав".
В Тотал командере запускалось и то и другое. Нашел в реестре команды запуска этих пунктов контекстного меню и изменил так же, как сделано в Тотал командере. Запуск диспетчера устройств такой:
mmc.exe %windir%\SYSTEM32\devmgmt.msc
А запуск просмотровщика служб такой:
mmc.exe %windir%\SYSTEM32\services.msc
(собственно запуск диспетчера устройств менять не пришлось - именно такая команда там и была).
Результат: Просмотровщик служб запускается без проблем. Диспетчер устройств не запускается, выдавая приведенное выше сообщение! Но почему?! Ведь команды то практически идентичные! Да и в командной строке приведенная команда запуска диспетчера устройств срабатывает без проблем! Почему же она не работает из контекстного меню? Кто знает, объясните пожалуйста!

Отправлено: 12:37, 28-09-2007

 


Moderator


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

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


andrystepa, тип параметра должен быть REG_EXPAND_SZ (или указывать полный путь C:\WINDOWS\system32\devmgmt.msc).
Такой твик работает:
Код: Выделить весь код
REGEDIT4

[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt]
@="Диспетчер устройств"
"SuppressionPolicy"=dword:4000003c

[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt\command]
@=hex(2):25,77,69,6e,64,69,72,25,5c,73,79,73,74,65,6d,33,32,5c,6d,6d,63,2e,65,\
  78,65,20,2f,73,20,25,77,69,6e,64,69,72,25,5c,73,79,73,74,65,6d,33,32,5c,64,\
  65,76,6d,67,6d,74,2e,6d,73,63,00
Раздел LDevMgmt назвал так только для того, чтобы соответствующий пункт контекстного меню был непосредственно над Управлением (между find и Manage). В меню сортировка по имени раздела (если назвать NDevMgmt, будет под Управлением).
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:06, 28-09-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


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

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


Но на моем домашнем компьютере тип параметра - REG_SZ, а строка параметра:
mmc.exe %%systemroot%%\SYSTEM32\devmgmt.msc
то есть практически то же самое, и никаких проблем - диспетчер устройств запускается.
В чем отличие то?

Отправлено: 16:30, 29-09-2007 | #3



Moderator


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

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


Цитата andrystepa:
В чем отличие то?
Отличие в версии MMC, 3.0 с параметром REG_SZ не работает.
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:39, 29-09-2007 | #4


Старожил


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

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


Цитата Petya V4sechkin:
REGEDIT4
[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt]
@="Диспетчер устройств"
"SuppressionPolicy"=dword:4000003c
[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt\command]
@=hex(2):25,77,69,6e,64,69,72,25,5c,73,79,73,74,65,6d,33,32,5c,6d,6d,63,2e,65,\
78,65,20,2f,73,20,25,77,69,6e,64,69,72,25,5c,73,79,73,74,65,6d,33,32,5c,64,\
65,76,6d,67,6d,74,2e,6d,73,63,00 »
Этот код не сработал. После его добавления открыл контекстное меню для "Мой компьютер" и выбрал диспетчер задач. Выскочил диалог выбора приложения для файла - мол этому файлу не сопоставлено ни одно приложение.
Полез в реестр. Изменил параметр REG_EXPAND_SZ в shell\LDevMgmt на mmc.exe %%systemroot%%\\SYSTEM32\\devmgmt.msc и все стало нормально работать. После этого я экспортировал эту ветку реестра и вот что получилось:
Код: Выделить весь код
Windows Registry Editor Version 5.00    
[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt]  @="Диспетчер устройств"  
"SuppressionPolicy"=dword:4000003c    
[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt\command]  
@=hex(2):6d,00,6d,00,63,00,2e,00,65,00,78,00,65,00,
20,00,25,00,25,00,73,00,79,    00,73,00,74,00,65,00,6d,00,72,00,6f,00,6f,00,74,
00,25,00,25,00,5c,00,5c,00,    53,00,59,00,53,00,54,00,45,00,4d,00,33,
00,32,00,5c,00,5c,00,64,00,65,00,76, 00,6d,00,67,00,6d,00,74,00,2e,00,6d,
00,73,00,63,00,00,00
Различие только одно - каждое значение расширено нулями до 32 бит, т. е. все значения стали 32 битными. Не знаю смысла этого изменения. Может кто объяснит?

Отправлено: 15:53, 22-06-2008 | #5



Moderator


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

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


Цитата andrystepa:
Этот код не сработал.
Батенька, это просто фантастика!
Сделано по аналогии с уже существующим стандартным разделом HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Manage

Отправлено: 16:29, 22-06-2008 | #6


Старожил


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

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


Тем не менее факт. Я просто скопировал вышеприведенный код и сделал из него файл .reg. Результат я уже описал. Потом просто в редакторе реестра изменил параметр REG_EXPAND_SZ (к слову сказать, изменял я его как строку, а не как двоичный. А как строка он в редакторе реестра выглядел в виде строки квадратиков!! - может в этом дело?) на такую:
mmc.exe %%systemroot%%\\SYSTEM32\\devmgmt.msc
После этого ссылка нормально заработала. В том же редакторе реестра я экспортировал ветку LDevMgmt и привел ее - как видно, различие налицо!

Отправлено: 23:46, 22-06-2008 | #7


Аватара для Котяра

Ветеран


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

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


Цитата andrystepa:
mmc.exe %%systemroot%%\\SYSTEM32\\devmgmt.msc »
Да, нужно дублировать проценты и слэши вроде тоже.

Отправлено: 00:26, 23-06-2008 | #8



Moderator


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

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


Цитата andrystepa:
А как строка он в редакторе реестра выглядел в виде строки квадратиков!! - может в этом дело?)
Конечно, в этом дело.
Вы неправильно сохранили reg-файл. Во втором посту первая строчка REGEDIT4. Возможно, вы подумали: "Что это за непонятный REGEDIT4, заменю-ка я его на Windows Registry Editor Version 5.00". И в результате получили крякозябры.

Есть два формата (версии) reg-файлов, прочитайте статью:
Как создавать, изменять или удалять подразделы и значения системного реестра с помощью файла записей регистрации (.reg)
В 4-й и 5-й версиях типы REG_EXPAND_SZ, REG_MULTI_SZ хранятся по-разному.

Вот другой вариант (с идентичным результатом), здесь уже первая строчка Windows Registry Editor Version 5.00:
Код: Выделить весь код
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt]
@="Диспетчер устройств"
"SuppressionPolicy"=dword:4000003c

[HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\LDevMgmt\command]
@=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,73,00,79,00,73,\
  00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d,00,6d,00,63,00,2e,00,65,00,78,00,\
  65,00,20,00,2f,00,73,00,20,00,25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,\
  00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,65,00,\
  76,00,6d,00,67,00,6d,00,74,00,2e,00,6d,00,73,00,63,00,00,00

Последний раз редактировалось Petya V4sechkin, 23-06-2008 в 10:37.

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:48, 23-06-2008 | #9


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


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

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


У меня возникла странная вариация на эту тему.

Из контекстного меню "Мой компьютер" пункт меню "Диспетчер устройств" срабатывает правильно.
Но если зайти в "Свойства системы" на вкладку "Оборудование" и попытаться запустить "Диспетчер устройств",
то выскакивает сообщение от ММС : "Отказано в доступе к указанному устройству, пути или файлу. Возможно у Вас нет нужных прав доступа к этому объекту".

Система WinXP SP3 Rus, права Администратора.

Почему это так происходит?

Отправлено: 06:45, 14-04-2009 | #10



Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 2000/XP » Разное - [решено] Непонятки с контекстным меню "Мой компьютер"

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] Добавить DevMgmt в контекстное меню свойств "Мой Компьютер" _koval Microsoft Windows Vista 3 27-07-2011 18:37
Интерфейс - [решено] Дополнительные команды в меню "Мой компьютер" Aleksandr185 Microsoft Windows 7 2 04-09-2009 12:33
Разное - [решено] Доп-ое меню в св-вах "Мой компьютер" и Меню восстановление forcik Microsoft Windows 2000/XP 3 24-12-2008 02:42
Интерфейс - [решено] как включить отображение бокового меню при заходе в "мой компьютер" cooldo Microsoft Windows 2000/XP 3 20-01-2008 01:17
[решено] в контекстном меню "Мой компьютер" вместо пункта "Открыть" квадратики NikLok Автоматическая установка Windows 2000/XP/2003 7 20-12-2006 17:04




 
Переход