Проблема:
Необходимо открыть файл с расширением shs (объект-фрагмент).
ОС: MS Windows XP, MS Windows Vista, MS Windows 7, MS Windows 8.
Файлы shs открываются обработчиком объектов-фрагментов Windows. В Windows XP это делается без проблем, а в более поздних версиях возникает проблема - файлу с расширением shs не сопоставлено ни одно приложение.
Решение:
Файл SHS содержит объект Microsoft Shell Scrap Object. Когда данный объект добавляется в файл, его истинное расширение скрывается. Вместо него пользователи Windows будут видеть расширение файла SHS. Чтобы увидеть истинное расширение файла, необходимо удалить в реестре Windows значение «NeverShowExt» из ветки «HKEY_CLASSES_ROOT\ShellScrap». Файлы SHS могут содержать вредоносный исходный код. Поэтому будьте осторожны, если Вы получили данный файл из непроверенного источника.
Рассмотрим два варианта открытия файлов shs:
[*] 1-й вариант:[/size]
Использование утилиты scrap2rtf для изъятия файлов из контейнера shs.
Утилиту scrap2rtf качаем отсюда.
Или берем отсюда:
С помощью этой программы можно сразу конвертировать группы файлов shs в нормальный формат. Но именно КОНВЕРТИРОВАТЬ для последующего использования.
Для того, чтобы файлы shs обрабатывались непосредственно обработчиком объектов-фрагментов Windows (как в Windpws XP) - используем второй способ:
[*] 2-й вариант:[/size]
-
Качаем архив с библиотекой shscrap.dll:
-
для 32-х битных систем:
для 64-х битных систем:
-
-
Распаковываем библиотеку shscrap.dll в папку %SystemRoot%\System32
-
Регистрируем библиотеку shscrap.dll:
Код: Выделить всё
RegSVR32 shscrap.dll
-
Импортируем файл реестра:
Код: Выделить всё
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.shs] @="ShellScrap" [HKEY_CLASSES_ROOT\ShellScrap] @="Scrap object" "NeverShowExt"="" "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,73,00,68,00,73,00,63,00,72,00,61,00,70,00,2e,00,64,00,6c,00,6c, 00,2c,00,2d,00,32,00,35,00,38,00,00,00 [HKEY_CLASSES_ROOT\ShellScrap\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, 73,00,63,00,72,00,61,00,70,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,00,30, 00,30,00,00,00 [HKEY_CLASSES_ROOT\ShellScrap\shell] [HKEY_CLASSES_ROOT\ShellScrap\shell\open] [HKEY_CLASSES_ROOT\ShellScrap\shell\open\command] @=hex(2):72,00,75,00,6e,00,64,00,6c,00,6c,00,33,00,32,00,20,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,73,00,68,00,73,00,63,00,72,00,61, 00,70,00,2e,00,64,00,6c,00,6c,00,2c,00,4f,00,70,00,65,00,6e,00,53,00,63,00, 72,00,61,00,70,00,5f,00,52,00,75,00,6e,00,44,00,4c,00,4c,00,20,00,25,00,31, 00,00,00 [HKEY_CLASSES_ROOT\ShellScrap\shellex] [HKEY_CLASSES_ROOT\ShellScrap\shellex\DataHandler] @="{56117100-C0CD-101B-81E2-00AA004AE837}" [HKEY_CLASSES_ROOT\CLSID\{56117100-C0CD-101B-81E2-00AA004AE837}] @="Shell Scrap DataHandler" [HKEY_CLASSES_ROOT\CLSID\{56117100-C0CD-101B-81E2-00AA004AE837}\InProcServer32] @="shscrap.dll" "ThreadingModel"="Apartment"
-
Вот и все. Теперь файлы shs будут обрабатываться непосредственно обработчиком объектов-фрагментов Windows.