powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Открытие файла
6 сообщений из 6, страница 1 из 1
Открытие файла
    #32302451
DionX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос вот в чём: нужно открыть файл (в заранее неизвестно какой), с помощью сопоставленного ему приложеню. Например, *.doc - с помощью Word. Желательно, конечно, предварительно проверить, зарегестрирован ли в виндах ентот тип файла.
...
Рейтинг: 0 / 0
Открытие файла
    #32303815
DionX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Млин... ну неужели ни кто не сталкивался? Може вопрос непонятно задал? Помогите плиз! Очь спасибо...
...
Рейтинг: 0 / 0
Открытие файла
    #32304884
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
встроенная команда shell
Апи - ShellExecute(ex)

Если нужно подробнее, копай апишки, там много интересного.

Зайди на allapi.net скачай справочник по апишкам и будет тебе щасте.


Magnus
...
Рейтинг: 0 / 0
Открытие файла
    #32305002
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда-то,"на заре туманной юности ",написал функцию:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
Private Function getRegValue(sExt As String) As String
Dim lReturn As Long
Dim sSubKey As String
Dim hKeyHandle As Long
Dim sValue As String
Dim lSize As Long
Dim lPos As Long
sSubKey =  "."  & sExt
lSize =  255 
sValue = String(lSize,  0 )
lReturn = RegOpenKey(HKEY_CLASSES_ROOT, sSubKey, hKeyHandle)
If lReturn <>  0  Then Exit Function
lReturn = RegQueryValue(hKeyHandle,  "", sValue, lSize)
If lReturn <> 0  Then
    getRegValue = " "
    Exit Function
End If
If Asc(Mid(sValue, lSize, 1 )) =  0  Then
    sValue = Left(sValue, lSize -  1 )
Else
    sValue = Left(sValue, lSize)
End If
sSubKey = sValue & "\shell\open\command "
lReturn = RegOpenKey(HKEY_CLASSES_ROOT, sSubKey, hKeyHandle)
If lReturn <> 0  Then
    getRegValue = " "
    Exit Function
End If
lSize = 255 
sValue = String(lSize,  0 )
lReturn = RegQueryValue(hKeyHandle, " ", sValue, lSize)
If lReturn <> 0  Then
    getRegValue = " "
    Exit Function
End If
If Asc(Mid(sValue, lSize, 1 )) =  0  Then
    sValue = Left(sValue, lSize -  1 )
Else
    sValue = Left(sValue, lSize)
End If
lPos = InStr(UCase(sValue), "EXE ")
If lPos Then
    getRegValue = Left(sValue, lPos + 2 ) & "  "
    lPos = InStr(getRegValue, Chr(34 ))
    If lPos =  1  Then
        getRegValue = Right(getRegValue, Len(getRegValue) -  1 )
    End If
Else
    getRegValue = ""
End If
End Function


Вызов
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
 sApp = getRegValue(sExt)
         If Len(sApp) Then
             On Error Resume Next
             Shell sApp & sfile, vbNormalFocus
             On Error GoTo  0 
          Else
             MsgBox  "NOT PROGRAMM ASSOCIATED WITH "  & sfile
          End If

где sfile-полное имя файла,sExt-расширение.
...
Рейтинг: 0 / 0
Открытие файла
    #32305530
DionX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 magnus:
shell не то что хотелось бы, читай внимательнее вопрос.
2 all
знаю, что нужно апи, нужен был конкретный пример. Спасибо VIG, не совсем то что хотелось бы, но всё же... Ешо идеи есть?
...
Рейтинг: 0 / 0
Открытие файла
    #32305532
DionX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чуть не забыл, magnus'у тоже спасиб за allapi.net
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Открытие файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]