MS Access | Автообновление приложения при его открытии

Например, имеем приложение Access, с которым работает пользователь, загружая его с локального диска.

 

Приложение хранит в себе данные (таблицы и связи MS Access) или использует связи к таблицам (например, MS SQL Server базы, расположенной удаленно), см. также многопользовательский вариант.

 

Назовем пример такого приложения LocalForms.

 

Всякий раз, когда разработчик вносит какие-то изменения в приложение LocalForms, нужно обновить программу также и у пользователей.

Обычно такую задачу разработчик решает рассылкой обновления и пользователь обновляет приложение сам.

 

Но вместо рассылки есть и другой способ: автообновление программы при ее запуске.

 

При таком варианте пользователь перестает запускать LocalForm непосредственно, а запускает LocalForms.bat.

При запуске LocalForms.bat происходит следующее: программа копирует с необходимого сетевого ресурса файл LocalForms и кладет его пользователю в папку локального сетевого диска

(например, на диск С), после чего оттуда его и запускает.

 

Для создания такого LocalForms.bat открываем, например, Notepad и набираем следующее:

 

mkdir "C:\FolderName"

copy "\\ServerName\Folder\LocalForms.accdb" "C:\ForlderName\LocalForms.accdb"

start "" "C:\FolderName\LocalForms.accdb"

 

где:

 

mkdir – команда создания папки. В примере создается папка с именем FolderName на диске С (даже если папка уже существует на диске, дальнейшие команды будут выполнены);

copy – команда копирования файла. Указывается путь к файлу для копирования "откуда": в приведенном примере это удаленный сервер \\ServerName, на котором папка \Folder, в ней файл LocalForms.accdb) и, через пробел, указан путь "куда" и "под каким именем": в приведенном примере это диск С, папка FolderName, файл под именем LocalForms.accdb;

start – команда открытия/запуска файла. В приведенном примере файл запускается с диска С и папки FolderName, файл LocalForms.accdb.

 

Набранное нужно Сохранить Как... LocalForms.bat.

Готовый LocalForms.bat проверить на правильность выполнения команд и установить на диск пользователя.

 

Другой пример: автообновление отчетов MS Excel.

Если пользователи используют внешние файлы, например отчеты MS Excel, то можно, разместив отчет на сервере, позволять им пользоваться его "свежей" копией, которая откроется с диска пользователя, если он будет запускать отчет через .bat файл. Такое решение позволит также избегать многопользовательского конфликта.

 

Например, напишем программу (Report.bat), которая скопирует отчет Report.xls с удаленного ресурса в папку Briefcase, расположенную на рабочем столе пользователя (папку командно создаст, если не обнаружит), после чего запустит файл Report.xls из этой папки:

 

mkdir "%userprofile%\desktop\Briefcase"

copy "\\ServerName\Folder\Report.xls" "%userprofile%\desktop\Briefcase"

start "" "%userprofile%\desktop\Briefcase\Report.xls

 


О применимых командах командной строки можно пользоваться указателем SS64

(там есть Command line reference для Linux, macOS и Windows --> An A-Z Index of Windows CMD commands)

 

См. также: Командная строка Windows

 



© 2006-2026 | Анна Петросян | pashelp@yandex.ru