Страница: 1 |
Уважаемые коллеги :) Есть небольшой вопросик. Дело в том, что я сейчас пишу небольшой HTML-редактор (кому интересно: http://lightknight.com.ru/files/editor_v106e.rar, `1.80 MB). Редактор поддерживает такие форматы, как HTML-файлы, PHP-файлы, SSI-файлы. Мне необходимо сделать ассоциацию файлов этих форматов со своей программой. Но! Я уже видел такие примеры, но боюсь, что, проассоциировав HTML-файл (PHP, SSI), я заставлю его открываться ДЛЯ ПРОСМОТРА в моем редакторе, а не в браузере. Т.е. мне нужно проассоциировать эти три типа файлов ДЛЯ РЕДАКТИРОВАНИЯ. Если можно, дайте ссылку на код. Заранее благодарен, LightKnight P.S. Слышал (читал :)) у вас на сайте, что, чтобы правильно проассоциировать тип файла с программой, надо, чтобы она работала с командной строкой. Так ли это? LightKnight
Короче вот путь реестре: HKEY_CLASSES_ROOT\htmlfile\shell\Edit\command\ Значение ключа по-умолчанию (у меня): "C:\PROGRAM ILES\MICROSOFTOFFICE\OFFICE\msohtmed.exe" %1 Что тебе стоит сделать вот так "Путь к редактору\твойредактор.exe" %1 Вот пример который показывает как связать файлы с разшырением .BAR с твоим приложением. Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Страница: 1 |
Вопрос: Создание ассоциаций для HTML-редактора
Добавлено: 30.07.03 06:35
Автор вопроса: LightKnight | Web-сайт:
Ответы
Всего ответов: 2
Номер ответа: 1
Автор ответа:
ZeroX
ICQ: 220401330
Вопросов: 47
Ответов: 406
Профиль | | #1
Добавлено: 30.07.03 12:20
Номер ответа: 2
Автор ответа:
slimyo
ICQ: 215451886
Вопросов: 14
Ответов: 26
Web-сайт:
Профиль | | #2
Добавлено: 31.07.03 16:14
Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
' Return codes from Registration functions.
Const ERROR_SUCCESS = 0&
Const ERROR_BADDB = 1&
Const ERROR_BADKEY = 2&
Const ERROR_CANTOPEN = 3&
Const ERROR_CANTREAD = 4&
Const ERROR_CANTWRITE = 5&
Const ERROR_OUTOFMEMORY = 6&
Const ERROR_INVALID_PARAMETER = 7&
Const ERROR_ACCESS_DENIED = 8&
Private Const HKEY_CLASSES_ROOT = &H80000000
Private Const MAX_PATH = 260&
Private Const REG_SZ = 1
Private Sub Command1_Click()
Dim sKeyName As String
Dim sKeyValue As String
Dim ret&
Dim lphKey&
'Создание ключа "MyApp".
sKeyName = "MyApp"
sKeyValue = "My Application"
ret& = RegCreateKey&HKEY_CLASSES_ROOT, sKeyName, lphKey&
ret& = RegSetValue&lphKey&, "", REG_SZ, sKeyValue, 0&
'Создание ключа, связанного с "MyApp".
sKeyName = ".bar"
sKeyValue = "MyApp"
ret& = RegCreateKey&HKEY_CLASSES_ROOT, sKeyName, lphKey&
ret& = RegSetValue&lphKey&, "", REG_SZ, sKeyValue, 0&
'Коммандная линия для приложения"MyApp".
sKeyName = "MyApp"
sKeyValue = "D:\Basic\MyProjects\SharPad\SharPad.exe %1"
ret& = RegCreateKey&HKEY_CLASSES_ROOT, sKeyName, lphKey&
ret& = RegSetValue&lphKey&, "shell\open\command", REG_SZ, sKeyValue, MAX_PATH)
End Sub