На главную страницу Версия-Т
VTSoft.ru

Особенности при установке BT-магазин на Windows 10 (8)


RSS
Особенности при установке BT-магазин на Windows 10 (8), Столкнулся с некоторыми проблемами в настройках
 
Здравствуйте.
На Windows 10 (и наверное на Windows 8(8.1)) ПО ВТ-магазин использует папку AppData. Возможно в связи с этим у меня возникали некоторые сложности с пониманием что и куда устанавливается по умолчанию? Т.е. где хранятся настройки программы и какие?
Последний раз столкнулся с такой проблемой, что сподвигло написать:
Захожу в редактирование уже изменённого мной шаблона этикетки, лежащего по пути:
C:\Program Files (x86)\VT\VTShop\ArmManager\Templates\Ценники и штрих-этикетки
и у меня через раз открывается, то изменённая мной этикетка, то этикетка по умолчанию. При том что я выбирал один и тот же файл, в одном и том же каталоге. На месте разобраться не получилось. Наверняка этому есть какое то объяснение.
Надеюсь ТП может исправить эту "кашу" в моей голове.
Возможно есть рекомендации не надеяться на установку по умолчанию и указывать свои пути установки?
Или всё равно, в AppData, что то будет лежать, и это обусловлено тем то?
 
Все файлы приложения делятся на две категории: программные файлы и файлы данных.
К программным файлам относятся исполняемые файлы (.exe, *.dll) и различные вспомогательные файлы, которые расположены в каталоге установки программы вместе с исполняемыми файлами, такие как шаблоны отчетов, печатные формы документов (.frf, *.fr3 ) и другие.

Каталогом для хранения программных файлов (откуда запускаются программы АРМ кассира, АРМ менеджера и т.д.) является каталог установки приложения - путь, который пользователь указал в процессе установки программы на компьютер. По умолчанию каталогом программных файлов является "C:\Program Files (x86)\VT\VTShop".

К файлам данных относятся те файлы, которые создаются и изменяются в процессе работы программ. В частности файл базы данных (Database.gdb), файлы для хранения настроек программ (*.ini) и т.п. Файлы данных хранятся в каталоге данных приложения. Это каталог текущего пользователя Windows: Users\<UserName>\AppData\Roaming\VT\VTShop. Он создается автоматически при первом запуске программы.

Раньше такого разделения не было. Файлы данных создавались в каталоге программных файлов (Program Files). Начиная с релиза 2.3.2 (от 30.04.2020) файлы данных теперь создаются в отдельном каталоге (AppData) . Сделано это по причине того, что создание и изменение файлов данных в папке C:\Program Files вызывало проблемы при работе в Windows под ограниченным пользователем . Также это приводило к ряду других проблем. В частности, сбой ПК и последующее автоматическое восстановление Windows из контрольной точки могло приводить к "откату" файла базы данных, и как следствие - к потере части содержимого базы данных. Количество потерянных данных определяется тем, насколько давно была создана точка восстановления системы.

С обновлениями уже имеющегося ПО дело обстоит несколько иначе. Поскольку к файлу БД могут быть подключены программы, установленные на других ПК, то перемещение файла базы данных автоматически приведет к ошибке подключения к БД с таких рабочих мест. Поэтому при обновлении мы не можем автоматически переместить данные из папки программных файлов в папку пользовательских данных. Т.е при обновлении, если пользовательские файлы были расположены в папке программных файлов, то они там и останутся и все будет работать, как и раньше.

Приложение определяет путь хранения пользовательских данных по расположению конфигурационного файла программы (ArmCachier.ini – для АРМК, ArmManager.ini – для АРММ и т. д.). Если конфигурационный файл расположен в папке программы (в программных файлах), то пользовательские данные программа будет искать по старому алгоритму – в папке программных файлов. Если в папке программы отсутствует конфигурационный файл, то все пользовательские данные, в том числе и конфигурационные файлы, будут храниться в папке AppData. Механизм определения папки программных файлов не зависит от пути установки программы. Неважно куда будет произведена установка программы, в «C:\Program Files\...» или в какую-то другую папку, пользовательские данные всё равно будут сохраняться в папку AppData, если в каталоге программы будет отсутствовать конфигурационный файл.

Тот случай, который Вы описываете, как раз связан с нюансами работы под ограниченным пользователем. Поскольку пользователь не имеет прав на запись в папку программных файлов, то Windows, скорее всего, автоматически сохраняет измененный файл в виртуальное хранилище «C:\Users\<UserName>\AppData\Local\VirtualStore\Progr­am Files (x86)\VT\VTShop». Если изменяемый Вами файл присутствует по указанному пути, то это как раз описываемый случай. Но в этом случае, теоретически, Windows должна подменять файл и при его чтении. Чтобы сказать что-то более конкретное – нужно изучать проблему «на месте». В следующих версиях мы доработаем алгоритм работы с пользовательскими шаблонами отчетов – они также будут сохраняться в папку AppData. На данный момент решением Вашей проблемы может стать запуск программ от имени администратора или добавление прав на запись в папку программных файлов для текущего пользователя Windows.
 
Большое спасибо за подробное пояснение
 
Оно конечно, может и правильно, хранить настройки и базу в AppData, но вы пробовали указать путь к базе в настройках кнопкой выбора файла ? Вот я не смог, по тому что AppData, это скрытый каталог и добраться до него не так то и просто. Для работы это конечно не критично, но вот в процессе настройки изрядно бесит.
 
Да, недосмотрели этот момент. В следующей версии включим видимость скрытых папок в диалоговом окне выбора файла базы.