Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 02.06.2009
Сообщений: 8

Как программно сопоставить файл с программой.

02.06.2009, 17:14. Показов 1329. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть программа, которая создает файл с собственным расширением .ХХХ. Как можно сделать так, чтобы при двойном нажатии на файле *.ХХХ автоматически запустилась программа?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.06.2009, 17:14
Ответы с готовыми решениями:

Как программно сопоставить расширение с программой
Есть программа, которая создает файл и этот созданный файл имеет собственное расширение, например .ХХХ. Как можно сделать так, чтобы при...

Программно ассоциировать файл с программой
Здравствуйте, подскажите как лучше всего программно провернуть такое: при запуске файла определенного расширения, должна открыться...

Как программно передвинуть виндовсовское окно с другой программой ?
Здравствуйте. У меня несколько нетривиальная задача, подскажите пожалуйста как можно сделать такое. У меня есть программа написанная на...

1
0 / 0 / 0
Регистрация: 17.06.2008
Сообщений: 30
02.06.2009, 18:39
Ассоциация с типами файлов

Следующий код предназначен для того, чтобы ассоциировать определённый тип файлов с Вашей программой:

'// Объявления

'// Функции
Private Declare Function RegCreateKeyEx Lib 'advapi32.dll' Alias 'RegCreateKeyExA' (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, phkResult As Long, lpdwDisposition As Long) As Long
Private Declare Function RegSetValueEx Lib 'advapi32.dll' Alias 'RegSetValueExA' (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long

'// Структуры

Private Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Boolean
End Type

'// Константы
Const HKEY_CLASSES_ROOT = &H80000000
Const REG_SZ = 1
Const KEY_ALL_ACCESS = &H3F

'// Функция для ассоциации типа файла с приложением
'// FileType - расширение файла

Public Sub AsProgram(FileType As String)
Dim retval As Long
Dim Result As Long
Dim SA As SECURITY_ATTRIBUTES
Dim sPath As String

'// Создаем ключ для программы
retval = RegCreateKeyEx(HKEY_CLASSES_ROOT, App.Title, 0, vbNullString, 0, KEY_ALL_ACCESS, SA, Result, &H1)
'// Присваиваем значению по умолчанию название программы
RegSetValueEx Result, '', 0, REG_SZ, ByVal App.Title, Len(App.Title)

'// Создаём ключ, связанный с расширением файла
retval = RegCreateKeyEx(HKEY_CLASSES_ROOT, FileType, 0, vbNullString, 0, KEY_ALL_ACCESS, SA, Result, &H1)
'// Присваиваем значению по умолчанию название программы
RegSetValueEx Result, '', 0, REG_SZ, ByVal App.Title, Len(App.Title)

'// Последние шаг - ассоциация типа с приложением

'// Определяем командную строку для приложения
If Right(App.Path, 1) = ' ' Then
sPath = App.Path & App.EXEName & '.exe %1'
Else
sPath = App.Path & ' ' & App.EXEName & '.exe %1'
End If

retval = RegCreateKeyEx(HKEY_CLASSES_ROOT, App.Title & 'shellopencommand', 0, vbNullString, 0, KEY_ALL_ACCESS, SA, Result, &H1)
RegSetValueEx Result, '', 0, REG_SZ, ByVal sPath, Len(sPath)

End Sub

Пример использования:

AsProgram '.txt'
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.06.2009, 18:39
Помогаю со студенческими работами здесь

Как удалить файл программой
Если можно приведите пример программы.

Как открыть файл программой по умолчанию
Всем привет, у меня вопрос следующего характера. Как моему приложению запустить внешненее приложение по умолчанию. Например, я хочу открыть...

Как сохранить файл в папку с программой?
Всем доброго времени суток! У меня есть вопрос. Как нужно изменить код, чтобы программа сама сохраняла файл в свою папку и давала ему имя? ...

Как запустить файл программой по умолчанию
На форме есть элемент Text Box1 и кнопка Button1 необходимо создать программу которая будет открывать файлы в программе по умолчанию: в...

Как открыть файл указанной программой
Доброго дня! Есть файл, который может быть открыть различными приложениями, а мне нужно чтобы он запускался конкретно мною указанной. Как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru