Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 28.05.2018
Сообщений: 56

Открытие PDF в Access

05.05.2019, 16:58. Показов 2827. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Возникла срочная задача. Помогите кто чем может.

Необходимо нажатие кнопки проверить наличие на компьютере установленного Adobe Reader и открыть в нем файл, находящийся в каталоге с базой данных. При отсутствии установленного Adobe Reader предложить запустить процесс его установки. Сам установщик Adobe Reader также находится в каталоге с базой данных.

Буду признателен за помощь.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.05.2019, 16:58
Ответы с готовыми решениями:

Люди добрые! Как реализовать открытие PDF файла из формы access
Люди добрые! Как реализовать открытие PDF файла из формы access.

Влияет ли удаленное вычисляемое поле в Access 2010 на открытие файла в Access 2007 ?
Создала в своей таблице в Access 2010 вычисляемое поле. Данные для него брались из этой же таблицы из других полей. Потом удалила его,...

Access to PDF
Wot takaja shtuka! Shew hochet, chtobi otcheti iz Access formirowalis w formate PDF(AcrobatReader). Est takaja wozmoshnost? ...

3
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
05.05.2019, 18:30
ShamanRUS,
Кликните здесь для просмотра всего текста
Visual Basic
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
'возможно требуется передекларировать API
Private Declare Function FindExecutable Lib "shell32" Alias "FindExecutableA" ( _
        ByVal lpFile As String, _
        ByVal lpDirectory As String, _
        ByVal lpResult As String) As Long
        
Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" ( _
        ByVal lpszLongPath As String, _
        ByVal lpszShortPath As String, _
        ByVal lBuffer As Long) As Long
             
 
Public Sub NewFollowHyperlink(Address As String)'<-путь и имя файла
Dim strAppName As String
Dim lngRetVal As Long
 
On Error Resume Next
strAppName = String$(255, 32)
lngRetVal = FindExecutable(Address, vbNullString, strAppName)
    If lngRetVal > 32 Then
        strAppName = Left$(strAppName, InStr(strAppName, Chr$(0)) - 1)
    Else '<-тут можешь предложить установку своей программы.
        MsgBox "Не найдена ассоциированная с файлом " & Chr$(34) & Address & Chr$(34) & " программа!"
        Exit Sub
    End If
lngRetVal = VBA.Shell(Chr$(34) & GetShortPath(strAppName) & Chr$(34) & " " & Chr$(34) & GetShortPath(Address) & Chr$(34), vbNormalFocus)
    If lngRetVal = 0 Then MsgBox "Не могу открыть файл!"
End Sub
 
'Получение имени файла в формате 8.3
Public Function GetShortPath(strFileName As String) As String
Dim lngRes As Long, strPath As String
 
    strPath = Space(255)
1:
    lngRes = GetShortPathName(strFileName, strPath, Len(strPath))
        If lngRes > 0 And lngRes <= Len(strPath) Then
            GetShortPath = Left$(strPath, lngRes)
        ElseIf lngRes > Len(strPath) Then 'не хватило буфера, хотя это маловероятно
            strPath = Space(lngRes)
            GoTo 1
        Else
            GetShortPath = strFileName
        End If
End Function

Делал нечто похожее на FollowHyperlink, но не помню уже...
0
Эксперт MS Access
 Аватар для Eugene-LS
12066 / 5849 / 1494
Регистрация: 05.10.2016
Сообщений: 16,443
06.05.2019, 00:51
Цитата Сообщение от ShamanRUS Посмотреть сообщение
Необходимо нажатие кнопки проверить наличие на компьютере установленного Adobe Reader и открыть в нем файл
А вот это точно обязательно?
Ведь навалом и других приложений открывающих PDF на просмотр. Под Win10 и "ослик" эти файлы шустро открывает.
Согласен с ув. Панург, достаточно запустить ассоциированное приложение (FollowHyperlink ... )
Довольно надёжно работает например:
Visual Basic
1
2
3
4
5
'Функция для запуска файла внешнего приложения API
Declare Function ShellExecute Lib "SHELL32.DLL" Alias "ShellExecuteA" (ByVal hwnd As Long, _
                         ByVal lpOperation As String, ByVal lpFile As String, _
                         ByVal lpParameters As String, ByVal lpDirectory As String, _
                         ByVal nShowCmd As Long) As Long
Пример эксплуатации:
Visual Basic
1
2
3
4
5
6
'Открываем файл
    If Dir(strPath) <> "" Then
        Call ShellExecute(0, "open", strPath, "", "", 1)
    Else
        MsgBox "Файл:" & vbCrLf & strPath & vbCrLf & "- Не найден!"
    End If
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
07.05.2019, 09:41
Вот же буквально недавно: Запуск внешней связанной программы с ожиданием завершения
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.05.2019, 09:41
Помогаю со студенческими работами здесь

pdf в access
Здравствуйте! Кто-то может подсказать как загрузить pdf в access? То есть я подключаю БД в проекте С# и мне нужно по нажатию на кнопку...

Экспорт из access в PDF
Доброго времени суток, господа! Столкнулся с такой проблемой пытаюсь экспортировать данные из запроса Access в файл PDF экспорт...

Заполнение PDF-документа из Access
Добрый день всем. Не знаю, кто как, но я лично - впервые столкнулся с редактируемым PDF-файлом, т.е. в нем есть поля для заполнения. Ну,...

Печать pdf-документа из Access
Подскажите, можно ли корректно вывести на печать pdf-документ(сохраненный в БД) через отчет MS Access? Или может есть какой другой...

Не могу открыть в PDF читалке в форме PDF файл имя которого хранится в БД Access
в приложении есть поиск он ищет в БД(1 таблица, 2 поля) и если в поисковую строку вводится название проблемы схожее с имеющейся в БД(1...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера 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. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru