Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.08.2011, 18:27   #1
Vedaslav
Ищите и обрящете!
Пользователь
 
Регистрация: 06.09.2010
Сообщений: 41
По умолчанию Некорректная работа программы в Windows 7.

Здравствуйте, уважаемые форумчане.
У меня возникла следующая проблема: моя программа хранит некоторые свои настройки в файлах, в своей рабочей папке. Иногда эти настройки изменяются и, следовательно, они должны перезаписываться в эти файлы.
Так вот, если, к примеру, установить программу на диск “С:\ Programm File\Рабочая папка” в Windows 7 и запустить её, то файлы с настройками почему-то записываются совсем не туда, а вот сюда: ”C:\Users\Vedaslav\AppData\Local\Vi rtualStore\Program Files\ Рабочая папка “.
Из-за этого программу глючит.

Что делать?
Vedaslav вне форума Ответить с цитированием
Старый 01.08.2011, 18:41   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию

поискать в инете версию этой программы для Windows 7. У меня, например, Alcohol 120% и RegOrganizer под XP работали как миленькие, а тут как поставил вторую систему, так пришлось новые версии искать и устанавливать. Нашёл и теперь доволен. и никаких проблем с настройками.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 01.08.2011, 18:49   #3
Vedaslav
Ищите и обрящете!
Пользователь
 
Регистрация: 06.09.2010
Сообщений: 41
По умолчанию Некорректная работа программы в Windows 7.

Цитата:
Сообщение от NetSpace Посмотреть сообщение
поискать в инете версию этой программы для Windows 7.
Эту программу написал я, и собираюсь её продавать. Так что нужны другие варианты решения этой проблемы.
Просто прога работает нормально в ХР, а в 7 тупит. Хочется что бы работала во всех версиях Windows.
Vedaslav вне форума Ответить с цитированием
Старый 01.08.2011, 19:00   #4
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Начинаем учить мат-часть.

Ключевые слова: UAC, виртуализация файловой системы.

Цитата:
Просто прога работает нормально в ХР, а в 7 тупит. Хочется что бы работала во всех версиях Windows.
Вообще-то она у тебя и в XP не работает. Запусти её под обычным пользователем (не админом) и посмотри, как красиво она вылетит.

Цитата:
Из-за этого программу глючит.
Есть мнение, что программу глючит не (только) поэтому.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 01.08.2011, 19:11   #5
Vedaslav
Ищите и обрящете!
Пользователь
 
Регистрация: 06.09.2010
Сообщений: 41
По умолчанию Некорректная работа программы в Windows 7.

Цитата:
Сообщение от GunSmoker Посмотреть сообщение
Начинаем учить мат-часть.

Ключевые слова: UAC, виртуализация файловой системы.
Понятно, я так и думал.



Цитата:
Вообще-то она у тебя и в XP не работает. Запусти её под обычным пользователем (не админом) и посмотри, как красиво она вылетит.
Всё там нормально работает. Я специально проверял.

Благодарю за ответ GunSmoker.
Vedaslav вне форума Ответить с цитированием
Старый 01.08.2011, 19:30   #6
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Если прога в XP под обычным пользователем (НЕ админом) успешно пишет в Program files - то мои поздравления: кто-то угробил настройки вашей системы путём правки ACL-списков файловой системы.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 01.08.2011, 20:31   #7
Vedaslav
Ищите и обрящете!
Пользователь
 
Регистрация: 06.09.2010
Сообщений: 41
По умолчанию

Цитата:
Сообщение от GunSmoker Посмотреть сообщение
Если прога в XP под обычным пользователем (НЕ админом) успешно пишет в Program files - то мои поздравления: кто-то угробил настройки вашей системы путём правки ACL-списков файловой системы.
Нет, настройки никто не гробил. Да сначала программа вылетала под учёткой пользователя в ХР, но я кое-что дописал в код проги и теперь всё Ок.

GunSmoker а вы не могли бы мне ответить по конкретней, что теперь программу никак нельзя установить в Programm File в Windows 7?
Потому что другие такие же программы устанавливаются туда и нормально работают.
Хотя бы теоретически опишите как решить эту проблему?
Vedaslav вне форума Ответить с цитированием
Старый 01.08.2011, 20:45   #8
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Цитата:
Нет, настройки никто не гробил.
Вы врёте.

Возможен один из вариантов:
1). Вы запустили программу под админом.
2). Программа не пишет в Program Files.
3). ACL-список Program Files был изменён.
4). Был изменён ACL-список подпапки Program Files ("Рабочая папка").

Должен выполняться хоть один пункт. Вы же утверждаете, что ни один не выполняется - этого быть не может.

Щёлкаем правой по Program Files, переходим на вкладку Безопасность и видим: Пользователи - чтение и выполнение. Администраторы - полный доступ. Это - настройки по умолчанию свежеустановленной системы. Если это не так - их кто-то испортил.

Если такие настройки и стоят, то программа ни при каких условиях не может выполнить успешную запись в Program Files под ограниченным пользователем.

Если же ваша программа действительно успешно пишет в Program Files (и настройки не сбиты), то это означает только одно: вы запустили программу под администратором системы. При запуске под обычным пользователем она работать не будет.

Цитата:
что теперь программу никак нельзя установить в Programm File в Windows 7?
Чего ж нельзя. Можно. Установкой программы занимается установщик программы, который всегда запускают с администраторскими полномочиями. У установщика будут права для записи в Program Files, создание подпапки для прогаммы, копирования файлов и т.п. Установщик спокойно может это делать, а вот программа не должна писать в Program Files.

Цитата:
Потому что другие такие же программы устанавливаются туда и нормально работают.
"Другие программы" не пишут в Program Files.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 01.08.2011, 21:04   #9
Vedaslav
Ищите и обрящете!
Пользователь
 
Регистрация: 06.09.2010
Сообщений: 41
По умолчанию

Цитата:
а вот программа не должна писать в Program Files.
Хорошо, буду экспериментировать.
Vedaslav вне форума Ответить с цитированием
Старый 01.08.2011, 21:08   #10
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Прежде чем начать экспериментировать, рекомендую попробовать показать код и описать, как именно не работает программа (вылетает, зависает, показывает ошибку и т.п.), потому что у меня большое подозрение на то, что проблема не в этом.

Дело в том, что "C:\Users\Vedaslav\AppData\Local\Vi rtualStore\Program Files\Рабочая папка" - это так файл виден для вас, когда вы его смотрите из Проводника, Total Commander или любой другой программы, которая написана под Vista/Win7. Для вашей же программы файл, скажем, C:\Users\Vedaslav\AppData\Local\Vir tualStore\Program Files\Рабочая папка\MyFile.data виден как именно как C:\Program Files\Рабочая папка\MyFile.data
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Некорректная работа программы... HyperZen Общие вопросы Delphi 2 03.07.2011 10:46
Некорректная работа WPF _-Re@l-_ WPF, UWP, WinRT, XAML 0 19.04.2011 16:05
Некорректная работа с файлами Gapro Общие вопросы Delphi 13 24.03.2011 08:39
Некорректная работа программы при формировании массива @Manya@ Общие вопросы C/C++ 13 22.04.2010 21:40
Некорректная работа Ucoz.ru docbrain WordPress и другие CMS 7 31.03.2010 11:26