SASGIS - SAS.Планета
View Issue Details
0002174SAS.Планета[All Projects] Багpublic18-09-2013 15:4330-12-2021 08:59
kamil 
 
lowminoralways
confirmedopen 
Windows7Home Premium
121010 
26xxxx 
0002174: Если sasplanet распаковать в program files и запускать оттуда, то она не может создать ini и sml файлы.
Если sasplanet распаковать в program files и запускать оттуда, то она не может создать ini и sml файлы. Прав нет. Причем запрос на права не выскакивает в попапе, а файлы просто не создаются. Лечится все это копированием каталога программы и ее запуском хотя бы в корень диска.
No tags attached.
related to 0002608closed zed Не сохраняется состояние программы 
related to 0002792closed zed В билде 8959 не экспортируются метки 
Issue History
18-09-2013 15:43kamilNew Issue
18-09-2013 16:03zedNote Added: 0012821
18-09-2013 16:10kamilNote Added: 0012822
18-09-2013 16:19zedNote Added: 0012823
18-09-2013 16:24zedNote Added: 0012824
18-09-2013 16:26kamilNote Added: 0012825
18-09-2013 16:30zedNote Added: 0012826
19-09-2013 04:06GarlNote Added: 0012837
19-09-2013 09:47zedNote Added: 0012842
21-09-2013 16:11PapazolNote Added: 0012879
15-11-2013 21:43vdemidovStatusnew => confirmed
15-11-2013 21:43vdemidovTarget Version => 24xxxx
07-08-2014 08:22DJ VKNote Added: 0014501
07-08-2014 09:18vdemidovNote Added: 0014502
21-01-2015 10:51vdemidovTarget Version24xxxx => 151010
28-01-2015 10:00vdemidovRelationship addedrelated to 0002608
19-08-2015 12:49zedRelationship addedrelated to 0002792
04-10-2015 15:28vdemidovTarget Version151010 => 151111
06-11-2015 08:20vdemidovTarget Version151111 => 191221
21-12-2019 09:14zedTarget Version191221 => 211230
30-12-2021 08:59zedTarget Version211230 => 26xxxx

Notes
(0012821)
zed   
18-09-2013 16:03   
>то она не может создать ini и sml файлы
И не только. САС в ту папку вообще ничего не сможет записать (кэш, настройки карт и проч. файлы), без соответствующих прав.

>Прав нет. Причем запрос на права не выскакивает в попапе, а файлы просто не создаются
А что, должно что-то выскакивать? И если оно будет выскакивать, то это можно считать решением бага?

Вообще, если говорить о поведении по-умолчанию, то при запуске из %ProgramFiles% кэш и все временные файлы САС должен располагать в папке пользователя, как это делают все прочие программы.
(0012822)
kamil   
18-09-2013 16:10   
Вот к примеру, когда я в тотал коммандере что-то копирую в такие папки, то выскакивает системное предупреждение, запрашивающее админские права. Я кликаю на кнопку и копирование проходит нормально. Я про то, что должно выскакивать.
(0012823)
zed   
18-09-2013 16:19   
>а файлы просто не создаются
А вы уверены?

http://dinyazavr.blogspot.com/2009/12/windows-7.html

Виртуализация в Windows 7

Предыстория. Приключилась слудующая ситуация в windows 7: через 7zip разпаковал архив в каталог c:\program files\programx. теперь через 7zip видно результат, а через explorer, что и через totalcommander нет причем сама программа, файлы которой были распакованы их воспрнимает %).

Сведующие люди сказали, что называется это вируализацией. Смысл ее в следующем. Любая программа, которая пишет в %Program Files% не имея на то прав - будет уверена что записала куда надо (это же касается и других системных каталогов). На самом же деле все файлы будут валяться в каталоге C:\Users\user\AppData\Local\VirtualStore\Program Files (Windows, etc).

В принципе, удобная штука: учитывает и безопасность и совместимость со старыми (и новыми непродуманными) программами (когда те, к примеру, конфиги в свой же каталог кидают)
(0012824)
zed   
18-09-2013 16:24   
>Я про то, что должно выскакивать.
В таком случае вам нужно запускать программу в режиме совместимости с XP. Ну, или сразу - от имени Администратора запустить.
(0012825)
kamil   
18-09-2013 16:26   
Мне в принципе все равно.
Для себя я эту проблему решил, а баг репорт написал, поскольку постоянно пользуюсь программой и о таких вещах считаю нужным сообщать.
(0012826)
zed   
18-09-2013 16:30   
>Мне в принципе все равно.
Ок, тогда подождём кого-нить более заинтересованного и продолжим разговор про выбор приемлемого поведения программы в таких случаях.
(0012837)
Garl   
19-09-2013 04:06   
интересно, а как SAS узнает что записаный ею ini находтся не в %programfiles% а в C:\Users\user\AppData\Local\VirtualStore\Program Files ??
(0012842)
zed   
19-09-2013 09:47   
>а как SAS узнает
В том-то и смысл виртуализации, что никак не узнает и будет уверена, что пишет/читает в programmfiles. Но работать будет.
(0012879)
Papazol   
21-09-2013 16:11   
Плохая идея устанавливать данную программу в Program Files. Сейчас многие ставят ОС на SSD носитель, у которых весьма ограниченная ёмкость. Если использовать настройки по умолчанию, кэш будет расположен, скажем так, в не совсем подходящем месте. И при переустановке системы проблемы опять же. С другой стороны, если поменять в ini расположение всех нужных файлов и папок на "хорошее", то программа будет работать и из Program Files, и местоположение нужных файлов и папок будет известным и прозрачным. Правда, не совсем понятно, для чего так необходимо ставить программу в Program Files.
(0014501)
DJ VK   
07-08-2014 08:22   
>>Вот к примеру, когда я в тотал коммандере что-то копирую в такие папки, то выскакивает системное предупреждение, запрашивающее админские права.

Парадоксально, но если установить тотал в Програм файлс, и не запустить его от имени админа, он даже свои настройки не может сохранить. ))

Если юзер ставит программу в свою операционную систему, то ставить галки совместимости и права админа - его личная обязанность. Или пусть нанимает администратора. По умолчанию программа сама туда не ставится, ярлык не создает, и правильно делает.
ИМХО пользователь НАЗЛО МИКРОСОФТ игнорирует многочисленные предупреждения руками в системные папки не лезть. (достаточно того, что они где-то и на каком-нибудь языке есть, НЕ на компе, и НЕ в виде всплывающего окна,
незнание закона как говорится... Почему микрософт подобные инструкции и пояснения делает, в основном, для разработчиков, а не пользователей, это вопрос уже к ним.)
(0014502)
vdemidov   
07-08-2014 09:18   
Ну, чисто теоретически можно добавить непортабельный режим. Все что нужно, это при старте определить, что этот режим нужно включить и поправить пути на папки с данными и конфигами, что бы они лежали в профиле пользователя. Вопрос только как определять что нужен непортабельный режим.
Варианты:
1. Проверять совпадает ли путь с папкой %ProgramFiles%
2. По маркерному файлу, само наличие которого будет переводить программу в непортабельный режим.
3. По ini файлу рядом с программой, в котором это будет указано явно
4. По отстутствию в ini файле рядом с программой указания что она в портабельном режиме
и тд.
Вариантов тьма.