Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2014.01.12;
Скачать: [xml.tar.bz2];

Вниз

Ошибка доступа   Найти похожие ветки 

 
dEN   (2013-03-19 10:52) [0]

Привет. Есть у меня маленькая прогрммка-справочник, используется у нас на работе. У рядовых пользователей нет прав администратора на рабочих станциях. Программа периодически пишет некоторые данные в ini-файл. Естественно без прав админа она этого делать не может. На компах с WinXP сделал права чтения/записи на папку с программой и все ОК. На Win7 такой трюк не прокатывает. Подскажите как быть? Там другой механизм доступа?


 
Podgoretsky   (2013-03-19 10:55) [1]

Наверно разместил свой файл в папке ReadOnly


 
Inovet ©   (2013-03-19 10:59) [2]

Не писать в Program Files, есть специальные места для хранения данных.


 
dEN   (2013-03-19 11:04) [3]

>> Наверно разместил свой файл в папке ReadOnly

На папку также ставили разрешения чтение/запись, но все равно просит пароль админский

>> Не писать в Program Files, есть специальные места для хранения данных.

Программу уже установили многие, менять сейчас что-то не просто, некоторые станции очень далеко от меня...хотя все правильно конечно говорите


 
Inovet ©   (2013-03-19 11:09) [4]

> [3] dEN   (19.03.13 11:04)
> Программу уже установили многие, менять сейчас что-то не просто

Сделать апдейт с переносом настроек.


 
dEN   (2013-03-19 11:16) [5]

>> Сделать апдейт с переносом настроек.

Это единственный вариант? Прогу надо сейчас уже запускать, пользователей > 500, пока я всем сделаю апдейт (повторю, многие далеко от меня) пройдет много времени. Я конечно это сделаю, обязательно. Но неужели дать права на эту папку никак нельзя?


 
robt   (2013-03-19 11:22) [6]

я бы на твоем месте с позором уволился и пошел работать дворником


 
robt   (2013-03-19 11:22) [7]

ибо это только начало...


 
dEN   (2013-03-19 11:28) [8]

>> я бы на твоем месте с позором уволился и пошел работать дворником

Я не работаю программистом. В своей сфере я неплохой спец (оптические системы связи, связист вообщем). Эту прожку (простая как валенок) поросили сваять года три назад, дельфи просто хобби, не более. Сделал, прижилась прожка. Да вот не учел сей момент, раньше у все Хрюша была, а сейчас стали на 7 - ку переходить и привет ))


 
Inovet ©   (2013-03-19 11:28) [9]

> [5] dEN   (19.03.13 11:16)

Права лучше не давать.

1. Как вариант ставить прогамму не в Програм Файлес.
2. Вообще-то Вин7 подсовывает виртуальную папку для сохранения таких файлов для совместимости.
3. Апдейт всё равно понадобится делать, раз не работет. Пусть он и перенесёт заодно настройки, там где и так работает на ХП.


 
robt   (2013-03-19 11:37) [10]


> Да вот не учел сей момент, раньше у все Хрюша была

тогда и админа уволить с позором, ибо ограниченные права есть и в Хрюше, а он допускал работу всех с правами админа, подвергая всю сеть предприятия опасности


 
clickmaker ©   (2013-03-19 12:20) [11]

увольте всех на фиг, возьмите на работу robta, он вам наведет порядок...


 
dEN   (2013-03-19 12:59) [12]

>> тогда и админа уволить с позором, ибо ограниченные права есть и в Хрюше, а он допускал работу всех с правами админа, подвергая всю сеть предприятия опасности

Глупости не пишете. написал же в первом посте что на Хрюшах небыло прав админа, права были только на папке (чтение\запись).

>> увольте всех на фиг, возьмите на работу robta, он вам наведет порядок...

у нас таких перцев пруд пруди ))


 
dEN   (2013-03-19 13:00) [13]

Понятно вообщем, буду апгрейдить )) Спасибо всем за советы!


 
robt   (2013-03-19 14:04) [14]


> clickmaker ©   (19.03.13 12:20) [11]

+1

> у нас таких перцев пруд пруди ))

мне вот непонятно, чья проблема с правами доступа, твоя (оптико-волоконщика) или админа которому платят за админа?
тебя попросили - ты наваял, пусть остальные гребутся как хотят, тебеж за просьбы недоплачивают?


 
robt   (2013-03-19 14:09) [15]


> Да вот не учел сей момент, раньше у все Хрюша была, а сейчас
> стали на 7 - ку переходить и привет

забавно висте уже 6 лет, а 7ке 3.5 года, т.е. она уже была к моменту создания проги...
надеюсь что в 8ке потестишь раньше чем к 2015 году :)))


 
dEN   (2013-03-19 14:46) [16]

>> robt   (19.03.13 14:09) [15]

От меня это не зависит


 
robt   (2013-03-19 15:00) [17]


> dEN   (19.03.13 14:46) [16]

как это не зависит?
ты не в состоянии установить новую ОСь и проверить работоспособность?


 
dEN   (2013-03-20 08:16) [18]

>> Inovet ©   (19.03.13 10:59) [2]

А какие специальные места? Пробовал в Application Data - пароль все равно просит


 
Inovet ©   (2013-03-20 09:21) [19]

> [18] dEN   (20.03.13 08:16)
> Пробовал в Application Data - пароль все равно просит

У меня не спросила

procedure TForm1.Button1Click(Sender: TObject);
var
 LStr: array [0 .. MAX_PATH] of Char;
begin
 if SHGetFolderPath(0, CSIDL_LOCAL_APPDATA, 0, 0, @LStr) = S_OK then
 begin
   CreateDir(LStr + "\MyApp");
 end;
end;


 
dEN   (2013-03-20 10:41) [20]

>> Inovet ©   (20.03.13 09:21) [19]

Да, создается без проблем...но если попробовать запустить оттуда файл *.exe (мне нужно, ибо это модуль который обновляет некоторые данные) - просит логин/пароль. Как обойти?


 
Inovet ©   (2013-03-20 11:06) [21]

> [20] dEN   (20.03.13 10:41)

Зачем *.exe ТУДА засовывать? Это некоторые богомерзкие программы взяли моду пихать себя в в профиль пользователя, чтобы он (пользователь) втихушку от админов их ставил где-нить на рабочем компе.

Помести его в %TEMP%. Отработает, вызовет основой исполняемый файл программы, создав предварительно, допустим, мьютекс с каким-нибудь именем MyAppUpdated. Основной увидит этот мьютекс и удалит из %TEMP% обновлятор и мьютекс. Ну или как-нибудь похожим образом, файл там создай какой в той же "...AppData\MyApp". В общем много раз уже обсуждалоись обновляторы.


 
dEN   (2013-03-20 11:25) [22]

>> Inovet ©   (20.03.13 11:06) [21]

Честно говоря не очень понял....у меня есть основная программа + обновлялка (отдельный EXE). В WinXP оба EXE (основной программы и упдатера) лежали в одной папке, проблем небыло. В Win7 основная программа запускается от имени админа и,пытаясь программно запустить Update.exe (обновлялку) получаю запрос имени и пароля. С настройками я разобрался, храню их теперь там где нужно )) А вот с запуском обновлялки пока проблема...


 
Inovet ©   (2013-03-20 11:36) [23]

> [22] dEN   (20.03.13 11:25)

Ты написал, что исполняемый файл обновлятора запускается из AppData, а не из Programm Files. Так откуда всё-таки? И вообще, как происходит обновление?


 
dEN   (2013-03-20 12:05) [24]

Вообщем программа устанавливается в Program Files изначально. Там файл MyPrg.exe, Update.exe и пара файлов настройки (ini). Программа в процессе работы проверяет на удаленном сервере наличие некоторых, не важно каких, обновлений. Если они там есть сообщает пользователю об этом. Пользователь может запустить модуль обновлений (Update.exe) и обновиться. Так вот, при попытке запуска Update.exe появляется запрос имени пользователя и пароля. Тоже самое было с попыткой писать в ini, вашей помощью это успешно решено переносом в Local/AppData. Попытался сунуть туда и Update.exe чтобы не получать запроса пароля - не вышло )) Вот и думаю как его запускать


 
Inovet ©   (2013-03-20 12:08) [25]

> [24] dEN   (20.03.13 12:05)

Так Update.exe поди перезаписывает MyPrg.exe? Тогда нормально, что админа требует.


 
dEN   (2013-03-20 12:12) [26]

не всегда, но да, бывает )) обойти не получиться?


 
dEN   (2013-03-20 12:14) [27]

Причем запрос имени и пароля происходит только еще на этапе вызова Update.exe


 
sniknik ©   (2013-03-20 12:18) [28]

а кто программу писал? походу манифест там на необходимые права (совершенно правильно), поэтому и требует на старте.


 
Inovet ©   (2013-03-20 12:19) [29]

> [27] dEN   (20.03.13 12:14)
> только еще на этапе вызова Update.exe

Это странно вообще-то.

> [26] dEN   (20.03.13 12:12)
> обойти не получиться?

Так весь смысл в том, чтобы от имени пользователя никто не смог изменить важные вайлы в Програм Файлес. Раз надо апдейтится, значит надо админа. Апдейт - дело не такое уж частое, в оличие от сохранения данных/настроек.


 
dEN   (2013-03-20 12:20) [30]

я писал) манифеста я никакого не делал )) писал под XP


 
Inovet ©   (2013-03-20 12:21) [31]

> [28] sniknik ©   (20.03.13 12:18)
> походу манифест там на необходимые права (совершенно правильно)

А, действительно может быть так.


 
dEN   (2013-03-20 12:24) [32]

>> Inovet ©   (20.03.13 12:19) [29]

Пользователей очень много, выставлять им права админа на период обновления (бывает и довольно часто) не представляется возможным....по уму то да, все верно вы говорите, но проблема не исчезла...может есть другие варианты при сохранении исходных требований?


 
dEN   (2013-03-20 12:26) [33]

Может ставить программу не в Program Files?


 
Inovet ©   (2013-03-20 12:36) [34]

> [33] dEN   (20.03.13 12:26)
> Может ставить программу не в Program Files?

Ну, выше я предлагал. Но это уже при отсутсвии альтернатив. Большинство апдейтов требуют админских прав, что и правильно. Firefox вон часто обновляется и честно требует повышения прав. А всякие хитрожопые программы втихаря пишут экзешники в профиль. Mailru Agent был уличён в таком, сам им не пользуюсь, так и не знал.


 
sniknik ©   (2013-03-20 12:39) [35]

> я писал) манифеста я никакого не делал )) писал под XP
на чем писал? если каким нибудь "стандартным сетапером" то он автоматом вставит.
...
хотя, может просто реакция на имя "Update.exe", попробуй переименовать в что-то безличное.


 
dEN   (2013-03-20 12:50) [36]

>> Inovet ©   (20.03.13 12:36) [34]

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


 
dEN   (2013-03-20 12:50) [37]

>> sniknik ©   (20.03.13 12:39) [35]

Писана на седьмой дельфи, устанвка сделана с помощью InnoSetup. Переименовать попробую


 
sniknik ©   (2013-03-20 12:53) [38]

> устанвка сделана с помощью InnoSetup.
Update.exe вот этот вот файл, это установка? про него говорим.


 
dEN   (2013-03-20 14:06) [39]

нет нет! Это просто доп. модуль который в процессе работы основной программы иногда загружается (пользователь жмет "Обновить") и обновляет некоторые файлы или сам файл программы (если я вношу в нее какие-то изменения). В составе установки осн. исполняемый файл программы, обновлялка (этот самый update.exe) и пара файлов настройки


 
robt   (2013-03-20 20:36) [40]

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



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2014.01.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.54 MB
Время: 0.004 c
2-1363675923
dEN
2013-03-19 10:52
2014.01.12
Ошибка доступа


2-1363475022
msFishbein
2013-03-17 03:03
2014.01.12
glvertex3f и glvertex3fv как преобразовать


2-1363338801
Zheksonz
2013-03-15 13:13
2014.01.12
Запитывание какого-либо устройства через USB порт


2-1363783734
Alex_C
2013-03-20 16:48
2014.01.12
TEdit+TStringGrid=странное поведение


15-1374259994
Фокс Йожин
2013-07-19 22:53
2014.01.12
Старые книги по Delphi





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский