Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
46 / 31 / 1
Регистрация: 28.09.2012
Сообщений: 972

Открытие через Аксесс 2003 программы в ее родном приложении

03.02.2016, 10:47. Показов 1325. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Фрумчане, доброго времени суток!

Возник вопрос по открытию программы из Аксесс.
Поискал по форуму в теме Из access запустить внешнюю программу
нашел код , разработанный mobile
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
' Win API "Открытие файла в его родном приложении"
Private 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
 
Public Const SW_SHOWMAXIMIZED = 3
Public Const SW_SHOWDEFAULT = 10
Public Const SW_SHOWNOACTIVATE = 4
Public Const SW_SHOWNORMAL = 1
 
Public Sub StartOfFile(strNameFile As String)
    Dim intResult As Integer
    Dim vTaskID
    intResult = ShellExecute(Application.hWndAccessApp, "open", strNameFile, 0, 0, SW_SHOWNORMAL)
        If intResult = 31 Then
            vTaskID = Shell("rundll32.exe shell32.dll, OpenAs_RunDLL strNameFile", vbNormalFocus)
        End If
End Sub
Прошу помочь адаптировать его под мои задачи.
т.е
Нужно адаптировать код для что бы открыть программу C:\DocWatcher.exe , и, возможно в последствии, фильтровать в ней записи при открытии по принципу "наименование папок и или (если не сложены в папку- то файлов) содержит текст Поле1 ". Формат файлов может быть любой (планируем, конечно .pdf , но это еще не окончательно)
Программа DocWatcher.exe самодельная, она содержит ссылки на файлы на сервере и служит для подписания электронной подписью файлов конструкторской документации непосредственно Adobe Acrobat Reader DC.
Она не дает одновременно открыть для редактирования ( подписания) один и тот же документ нескольким сотрудникам сразу.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.02.2016, 10:47
Ответы с готовыми решениями:

Открытие файла по сылке через Аксесс 2003 , таблицы -в mySQL
Форумчане, доброго времени суток! Перенес таблицы с Аксесс 2003 на MySQL. Гиперссылки перестали работать. Вновь введенные гиперссылки...

Не устанавливается Аксесс 2003 , Аксесс рантайм 2003
Форумчане, доброго времени суток! Хотел поставить Аксесс-2003 - не устанавливается. Затем решил поставить Аксесс рантайм 2003- также...

Фильтр по выделенному значению на форме Аксесс (открытом Аксесс Runtime 2003)
Форумчане, доброго времени суток! Прошу Вашей помощи! В Форме_1 Аксесс нужно сделать фильтр по двойному щелчку на поле...

11
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
04.02.2016, 08:38
Visual Basic
1
2
Set objShellApp = CreateObject("Shell.Application")
objShellApp.ShellExecute "C:\DocWatcher.exe", "ПолныйПутьКФайлу"
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
04.02.2016, 08:39
Цитата Сообщение от ankan Посмотреть сообщение
Нужно адаптировать код для что бы открыть программу C:\DocWatcher.exe
Цитата Сообщение от ankan Посмотреть сообщение
Win API "Открытие файла в его родном приложении"
Ничего странного не замечаете?
1
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
04.02.2016, 09:15
Какое может быть "родное" приложение для исполняемого файла .EXE? Только винда, но она родная всем. Не нужен шеллекзекуте, достаточно обычного Shell
Visual Basic
1
2
Shell "C:\WINDOWS\CALC.EXE", 1  ' Пример из хелпа - запуск калькулятора
Shell "путь\DocWatcher.exe", 1
1
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
04.02.2016, 09:35
Цитата Сообщение от mobile Посмотреть сообщение
Не нужен шеллекзекуте, достаточно обычного Shell
Так нужно же параметром имя конкретного файла передать. Разве в просто Shell так можно?
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
04.02.2016, 09:41
Цитата Сообщение от texnik-san Посмотреть сообщение
Разве в просто Shell так можно?
Конечно можно, путь к приложению, потом путь к файлу. Почему нельзя?
2
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
04.02.2016, 09:47
Можно и в шелл передавать параметры
Visual Basic
1
shell "excel.exe c:\temp\myfile.xls",1
Добавлено через 39 секунд
Опоздал
1
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
04.02.2016, 09:56
Аааа, все в одних кавычках )))) Не доперла. Спасибо!
0
46 / 31 / 1
Регистрация: 28.09.2012
Сообщений: 972
04.02.2016, 13:59  [ТС]
mobile, Согласен, наименование темы неоднозначное.

Прошу администраторов заменить наименование темы на "Открытие сторонней программы через Аксесс 2003" или любое подобное.

Добавлено через 1 час 0 минут
mobile, Что-то не запускается
Visual Basic
1
2
3
Private Sub Кнопка52_KeyPress(KeyAscii As Integer)
Shell "C:\DocWatcher\DocWatcher.exe", 1
End Sub
И калькулятор тоже не запускается:
Visual Basic
1
2
3
Private Sub Кнопка53_KeyPress(KeyAscii As Integer)
Shell "C:\Windows\system32\calc.exe", 1
End Sub
Вставил в форму проекта аксесс 2003, но на машине установлен Аксесс 2007 и винда7
В "свойствах" DocWatcher указано "запуск от имени администратора- т.е. стоит галочка"
0
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
04.02.2016, 14:21
KeyPress???

Может Click все-таки?
1
46 / 31 / 1
Регистрация: 28.09.2012
Сообщений: 972
04.02.2016, 14:29  [ТС]
texnik-san, Вы правы,Click !!
Калькулятор стал открываться, но программа нет "Ошибка 5"
Invalid procedure call or argument
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
05.02.2016, 02:15
Может ваша программа работает только с параметром в виде пути к файлу?

нажмите Пуск - Выполнить. Напишите cmd, нажмите ОК, в открывшемся окне введите полный путь к вашему файлу :

C:\DocWatcher\DocWatcher.exe

нажмите Enter.

Какой результат?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.02.2016, 02:15
Помогаю со студенческими работами здесь

Восстановление корректной работы БД Аксесс-2003
Форумчане! БД стала работать некорректно? т.е подвисать при сохранении изменений в режиме конструктора, при попытке напечатать отчет -...

Автоматизация переименование объектов Аксесс 2003
Форумчане, доброго времени суток! Надумал переименовать наименование объектов: (таблиц, форм, запросов,отчетов), полей в таблицах с...

Защита БД Аксесс 2003 от несанкционированного доступа
Доброго времени суток!!! Нужен совет!!!! Структура БД следующая: База Base находится на сервере в папке (директории) А. Эталонный...

Кодировка текста в таблицах Аксесс 2003
Форумчане, доброго времени суток! Проверяю, в какой кодировку хранятся текстовые данные в таблице Аксесс 2003 (Декодером онлайн студии...

Как найти дефектные объекты в БД аксесс 2003?
Форумчане, доброго всем здоровья! есть подозрение, что в БД (или только в интерфейсе) есть дефектные объекты ( формы, запросы и т.п.) ...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru