powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Про Program Files и права записи
25 сообщений из 49, страница 1 из 2
Про Program Files и права записи
    #39887148
Basketbol
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем.
Сделал одну софтину, и даю ее людям.
Инсталяшка устанавливает ее в папку Program Files.
В программе используется:
1. Ini-файл
2. Sqlie база
Я все это положил в подпапки с программой.

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

Я правильно понимаю что базу и инифайл я должен хранить в стандартной папке App Data ?
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887161
DmSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используйте переменные окружения:

%USERPROFILE% (Ведёт на C:\Users\UserName)
%APPDATA% (C:\Users\UserName\AppData\Roaming)
%LOCALAPPDATA% (C:\Users\UserName\AppData\Local)

%ALLUSERSPROFILE% или %ProgramData% (C:\ProgramData)

Также Вы можете настраивать разрешение на доступ в свой раздел в папке "Program Files".
Либо составить инструкцию для пользователей, либо делать это автоматически на этапе установки.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887163
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В силу определенных мер безопасности, тем более у вас есть инсталяшка, то appdata - будет норм...

http://docwiki.embarcadero.com/Libraries/Rio/en/System.IOUtils.TPath_Methods


TPath.GetCachePath
TPath.GetPublicPath

также есть полезные статьи:

https://www.gunsmoker.ru/2015/01/never-use-relative-file-paths.html
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887208
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basketbol,

А мы там, где ось новее висты, ставим просто в С:\каталогмоейпрограммы. Ни одно животное в процессе эксплуатации не погибло.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887333
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё
Basketbol,
А мы там, где ось новее висты, ставим просто в С:\каталогмоейпрограммы. Ни одно животное в процессе эксплуатации не погибло.

1. В папки на диске C: по-умолчанию права на запись есть только у админов и у тех кто там эту папку создал, т.е. под другим пользователем не заработает, если права не менять.
2. Как пользователь хочу сказать: горите в аду, те кто требует устанавливать свой софт в корень диска C: или запускать приложение от админа, чтобы оно могло писать свои данные в Program Files.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887418
DmSer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alekcvp

1. В папки на диске C: по-умолчанию права на запись есть только у админов и у тех кто там эту папку создал, т.е. под другим пользователем не заработает, если права не менять.
2. Как пользователь хочу сказать: горите в аду, те кто требует устанавливать свой софт в корень диска C:


1. Это верно. Автоматически нужно настраивать права на запись в момент инсталляции.
2. Установка в корне диска "C" облегчает техподдержку. Сейчас может и не так актуально, почти у всех есть интернет и все ставят программы для удалённого доступа, а раньше очень часто приходилось объяснять по телефону: открой проводник, залезь на диск "C:\", зайди в папку такую-то, скопируй то-то и т.д.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887464
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alekcvp

2. Как пользователь хочу сказать: горите в аду, те кто требует устанавливать свой софт в корень диска C: или запускать приложение от админа, чтобы оно могло писать свои данные в Program Files.

Как пользователь хочу сказать: горите в аду, те, кто заставляет свой софт безальтернативно (!) гадить в appdata, commonfiles и реестре.
И еще - одно дело юзерский софт общего назначения, другое - рабочий.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887467
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
11.11.2019 13:59, Василий 2 пишет:
> гадить в appdata, commonfiles и реестре.

а ты читал руководящие и направляющие документы партии и
правительства msdn на эту тему?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887515
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий 2,

так appdata для того и существует, чтобы приложения там свои данные держали.
Что плохо бывает - это когда деинсталлятор не полностью удаляет за программой - из appdata, из реестра и т.д.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887517
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий 2
Как пользователь хочу сказать: горите в аду, те, кто заставляет свой софт безальтернативно (!) гадить в appdata, commonfiles и реестре.

Appdata, commonfiles и реестр специально сделаны для того, чтобы в них "гадить". Обычному пользователю их содержимое не видно и не слышно, в отличие от корня диска C:. Вам-то чем их содержимое помешало?

И если про реестр ещё можно с натяжкой сказать что его захламление тормозит систему, то содержимое appdata и commonfiles на производительность не влияет от слова совсем (до тех пор, пока счёт объектов там не идёт на тысячи, но я такого в жизни не встречал).
s62
Что плохо бывает - это когда деинсталлятор не полностью удаляет за программой - из appdata, из реестра и т.д.
В идеале должна быть опция: сохранить настройки, на случай переустановки программы или удалить нафиг всё.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887642
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я вот одного не пойму, а запакованные архиватором программы работают хужее, чем поставленные инсталлятором?

Чего уж проще, распаковал, куда надо и предоставил юзеру выбор, где хранить данные - в папке с исполняемой программой или в пользовательских папках.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887650
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
11.11.2019 17:51, Док пишет:
>
> я вот одного не пойму, а запакованные архиватором программы работают
> хужее, чем поставленные инсталлятором?
>
> Чего уж проще, распаковал, куда надо и предоставил юзеру выбор, где
> хранить данные - в папке с исполняемой программой или в пользовательских
> папках.

это "портабле вершн".
вполне работоспособно, но M$ не одобряет.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887666
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Док
я вот одного не пойму, а запакованные архиватором программы работают хужее, чем поставленные инсталлятором?

Чего уж проще, распаковал, куда надо и предоставил юзеру выбор, где хранить данные - в папке с исполняемой программой или в пользовательских папках.
так лишают мелкомягких денег, а они этого не любят
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887683
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Док
я вот одного не пойму, а запакованные архиватором программы работают хужее, чем поставленные инсталлятором?

Чего уж проще, распаковал, куда надо и предоставил юзеру выбор, где хранить данные - в папке с исполняемой программой или в пользовательских папках.
Если в одно место всё нужно распаковать, то да. А если в разные папки: в папку установки, в appdata, м.б. - в подпапку в Моих Документах что-то. Ярлык создать, что-то в реестр прописать. Лицуху заставить пользователя чекнуть, что согласен и принимает. Бывает ещё нужно dll зарегистрировать.
А в Program Files обычному пользователю запрещено писать файлы. То есть, если устанавливать/распаковывать программу туда, то всякие файлы настройки, которые при работе программы должны меняться, туда же писать нельзя, либо нужно административно давать права на запись в директории программы. То есть или эту ерунду делай, или писать, куда можно, например, как рекомендует MS, в специальные папки.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887708
Любезный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА в Program Files обычному пользователю запрещено писать файлы.
Как и в Common Files.
Писать надо либо в документы, либо в подкаталог {Author}\{ProgramName}, создаваемый в AppData (Local или Roaming). Нужный путь из программы получается через метод shGetFolderPath и констант из модуля shFolder. Пример:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
function GetWorkDir: string;
var Buf: array [0..MAX_PATH] of Char;
    l: smallint;
begin
 ShGetFolderPath(0, CSIDL_LOCAL_APPDATA, 0, 0, Buf);
 Result:=Buf;
 l:=length (Result);
 if l>0 then if Result [l]<>'\' then Result:=Result + '\';
 Result:=Result+'Lyubeznyy\'+AppName;
 if not DirectoryExists (Result)
 then if not ForceDirectories(Result)
       then Raise Exception.Create('Не удалось создать служебную директорию '
                                    + Result);
 l:=length (Result);
 if l>0 then if Result [l]<>'\' then Result:=Result + '\';
end;
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39887951
Василий 2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий

а ты читал руководящие и направляющие документы партии и
правительства msdn на эту тему?

Читал, и? Линия партии вовсе не идеал, тем паче когда эта партия - Мелкософт.
s62
Василий 2,

так appdata для того и существует, чтобы приложения там свои данные держали.
Что плохо бывает - это когда деинсталлятор не полностью удаляет за программой - из appdata, из реестра и т.д.

И из-за этого перенос программ с настройками превращается в увлекательный квест

alekcvp
Василий 2
Как пользователь хочу сказать: горите в аду, те, кто заставляет свой софт безальтернативно (!) гадить в appdata, commonfiles и реестре.

Appdata, commonfiles и реестр специально сделаны для того, чтобы в них "гадить". Обычному пользователю их содержимое не видно и не слышно, в отличие от корня диска C:. Вам-то чем их содержимое помешало?

Перенос софта с настройками между машинами очень неудобен
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888021
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий 2

Перенос софта с настройками между машинами очень неудобен
Да, согласен, что неудобства при переносе софта это создает, это понятно.
Клиент-Сбербанк, пока Сбер не перешел на веб-версию, как раз устанавливался в одну папку не в Program Files и переносить его было относительно удобно (что-то там делать всё равно нужно было, кроме простого копирования, по-моему).
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888033
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmSer
alekcvp

1. В папки на диске C: по-умолчанию права на запись есть только у админов и у тех кто там эту папку создал, т.е. под другим пользователем не заработает, если права не менять.
2. Как пользователь хочу сказать: горите в аду, те кто требует устанавливать свой софт в корень диска C:


1. Это верно. Автоматически нужно настраивать права на запись в момент инсталляции.
2. Установка в корне диска "C" облегчает техподдержку. Сейчас может и не так актуально, почти у всех есть интернет и все ставят программы для удалённого доступа, а раньше очень часто приходилось объяснять по телефону: открой проводник, залезь на диск "C:\", зайди в папку такую-то, скопируй то-то и т.д.

Василий 2
alekcvp

2. Как пользователь хочу сказать: горите в аду, те кто требует устанавливать свой софт в корень диска C: или запускать приложение от админа, чтобы оно могло писать свои данные в Program Files.

Как пользователь хочу сказать: горите в аду, те, кто заставляет свой софт безальтернативно (!) гадить в appdata, commonfiles и реестре.
И еще - одно дело юзерский софт общего назначения, другое - рабочий.

Да, очень удобно. Даже удобнее, чем раньше (це:\програм фалес).
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888039
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
12.11.2019 11:31, Василий 2 пишет:
> Линия партии вовсе не идеал, тем паче когда эта партия - Мелкософт.

а куды ж ты с подводной лодки денесся? (С)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888044
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...более того, люди консультируются насчет того, что нужно для работы нашего программного комплекса: какой комп, с какой версией ОС и с каким ЭмЭс Офиссом приобретать. А мы им в ответ - пургу насчет роаминг/аппдаты будем нести, вот вам, чтобы неудобно работать было...
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888045
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
12.11.2019 13:29, ёёёёё пишет:
> ...более того, люди консультируются насчет того, что нужно для работы
> нашего программного комплекса: какой комп, с какой версией ОС и с каким
> ЭмЭс Офиссом приобретать. А мы им в ответ - пургу насчет роаминг/аппдаты
> будем нести, вот вам, чтобы неудобно работать было...

хорошо написанный софт одинаково глючит независимо от версии ОС!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888046
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

по крайней мере, к этому следует стремиться.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888072
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то не нашел кнопку "Редактировать" или "Изменить".

s62
Василий 2

Перенос софта с настройками между машинами очень неудобен
Да, согласен, что неудобства при переносе софта это создает, это понятно.
...
Но не всегда это какая-то серьезная проблема, зависит от софта. Бывает же, что заново установил на новый комп, настроил несколько настроек и всё.

P.S. Понятно, "Изменить" видимо есть какое-то недолгое время.
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888074
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
12.11.2019 13:32, ёёёёё пишет:
> по крайней мере, к этому следует стремиться.

сегодня выходит очередное (сто-пицотое) обновление Win 10 от M$.
посвящено исправлению прежних ошибок и привнесению новых.
пионЭры, будьте готовы!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Про Program Files и права записи
    #39888201
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Василий 2
И из-за этого перенос программ с настройками превращается в увлекательный квест

Ну да, нормальный экспорт/импорт настроек сделать - это же программист нужон :)
...
Рейтинг: 0 / 0
25 сообщений из 49, страница 1 из 2
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Про Program Files и права записи
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]