Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Открытие файла / 6 сообщений из 6, страница 1 из 1
23.10.2003, 09:08
    #32302451
DionX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие файла
Вопрос вот в чём: нужно открыть файл (в заранее неизвестно какой), с помощью сопоставленного ему приложеню. Например, *.doc - с помощью Word. Желательно, конечно, предварительно проверить, зарегестрирован ли в виндах ентот тип файла.
...
Рейтинг: 0 / 0
24.10.2003, 07:19
    #32303815
DionX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие файла
Млин... ну неужели ни кто не сталкивался? Може вопрос непонятно задал? Помогите плиз! Очь спасибо...
...
Рейтинг: 0 / 0
24.10.2003, 20:22
    #32304884
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие файла
встроенная команда shell
Апи - ShellExecute(ex)

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

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


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


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