[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Операционные системы / Windows /

Регистрация расширений файлов с помощью реестра Windows

На написание этой статьи меня подвигло одно небольшое происшествие: одна из женщин на работе обратилась ко мне с вопросом - у нее значок Вордовского файла отображался не как для этих файлов, а как для незарегистрированного типа. Попробовал зарегистрировать его, используя пункт контекстного меню "Открыть с помощью", но файл открылся, а значок не изменился. Был конец рабочего дня, поэтому я протормозил пару минут, пока не догадался посмотреть расширение файла. Его не было :) - это и не позволяло ассоциировать файл с приложением. Вот я и решил написать статью о регистрации расширений файлов. Что это дает? Вы можете двойным кликом открыть файл с помощью ассоциированного приложения, добавить на него дополнительные команды (например, печать, быстрый просмотр и т.п.). Для этого вовсе не обязательно лезть в реестр - можно все сделать с помощью того же меню "Открыть с помощью..." или проводника, но это не всегда удобно. Так, если вам надо сделать одну и ту же операцию, скажем, на десятке компьютеров, то гораздо проще написать reg-файл и установить его на всех машинах. Или вы распространяете программу, использующую ваш формат файлов, и чтобы ассоциировать файлы с программой на машинах пользователей автоматически надо использовать либо тот же reg-файл, либо править реестр из программы. Вот для этих случаев и нужна эта статья.

Файлы регистрируются в разделе HKEY_CLASSES_ROOT. Для примера зарегистрируем файл с расширением .diz - многие программы поставляются с файлом описания, имеющим такое расширение. Неплохо было бы при запуске его просматривать содержимое в текстовом редакторе, например, Блокноте. Создайте раздел с именем .diz, в параметр которого "По умолчанию" добавьте запись "DIZ-File" (без кавычек).

В разделе HKEY_CLASSES_ROOT создайте еще один раздел с именем, которое было в параметре "По умолчанию", т.е. DIZ-File. Задайте значение "По умолчанию" равное "Описание программы" и в этом же разделе создайте подразделы shell и DefaultIcon.

В подразделе shell создайте еще один подраздел Open, а в нем раздел command. Значение command "По умолчанию" должно быть "C:\windows\notepad.exe "%1"". В разделе DefaultIcon параметр "По умолчанию" задайте равным "C:\windows\notepad.exe,1". Получилось все несколько сумбурно и запутанно, но приведенный ниже reg-файл должен устранить все неясности

REGEDIT4

[HKEY_CLASSES_ROOT.diz]
@="DIZ-File"

[HKEY_CLASSES_ROOTDIZ-File]
@="Описание программы"

[HKEY_CLASSES_ROOTDIZ-Fileshell]

[HKEY_CLASSES_ROOTDIZ-FileshellOpen]

[HKEY_CLASSES_ROOTDIZ-FileshellOpencommand]
@="C:\windows\notepad.exe "%1""

[HKEY_CLASSES_ROOTDIZ-FileDefaultIcon]
@="C:\windows\notepad.exe,1"

Теперь все стало несколько понятнее. Надеюсь, вы обратили внимание на то, что в пути файла вместо одного символа используется \ и кавычка задается как ". При открытии файла используется параметр %1 после полного имени файла Блокнота (кстати, путь к нему у вас может быть другим). Этот параметр передает выбранный файл в Блокнот. Если путь к файлу приложения содержит пробелы, то он должен быть заключен в кавычки.

Теперь добавим пункт на распечатывание этого файла. Покажу все на примере нашего reg-файла. Добавьте следующие строки в конец файла:

[HKEY_CLASSES_ROOTDIZ-Fileshellprint]

[HKEY_CLASSES_ROOTDIZ-Fileshellprintcommand]
@="C:\windows\notepad.exe /p "%1""

Думаю, аналогия понятна. Теперь вы и сами можете добавить любой пункт меню к любому зарегистрированному типу файлов. Так, можно было бы добавить просмотр файлов diz в WordPad'e, Word'e или еще где-то. Возможности по редактированию контекстного меню файлов весьма обширные и я надеюсь, что мне удалось довольно понятно объяснить технологию добавления новых пунктов. Ну, а если что-то будет непонятно, пишите.




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Операционные системы / Windows /

Спасение WINDOWS XP
27-05-2010   

Windows крайне ненадежная операционная система. Сколько бы ни говорили, что XP не такой все это неправда. Он летит просто чуть меньше своих собратьев. Ну, еще, правда он имеет некоторые функции восстановления . Как раз о них я и расскажу в этой статье... подробнее

Кол. просмотров: общее - 3616 сегодня - 2

Реестр WINDOWS XP
27-05-2010   

Реестр. Огромная база данных где хранятся настройки нашей ос. Чего тут только нет! Любой программист создающий достаточно серьезную программу обязательно работает с реестром... подробнее

Кол. просмотров: общее - 3538 сегодня - 0

Командная строка Windows XP + .bat
27-05-2010   

Многие пользователи Windows просто игнорируют командную строку за ненадобностью, но для администратирования, написания программ - командный язык может оказаться весьма полезным... подробнее

Кол. просмотров: общее - 3637 сегодня - 0

Общие сведения о драйверах устройств в системе Windows
17-05-2010   

Естественно, каждая операционная система имеет собственную архитектуру и свои особенности функционирования драйверов. Но практически во всех современных ОС можно выделить следующие особенности, характерные для работы подсистемы ввода-вывода... подробнее

Кол. просмотров: общее - 3277 сегодня - 0

Система ввода-вывода в Windows
17-05-2010   

На данный момент наиболее распространены два семейства ОС Windows: Windows NT, куда относятся Windows NT, 2000, XP, и Windows 9x (Win 95, 98, ME). При этом отмечается тенденция к отмиранию ветки 9х, хотя такие системы будут встречаться еще достаточно долго... подробнее

Кол. просмотров: общее - 3538 сегодня - 0



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects