Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 2 618

/ вопрос открыт /

Приветствую, уважаемые эксперты!
Есть у меня программа на Delphi, написанная не мной; когда ее запускаю, некоторые окошки проинициализированы значением, другие - нет. Если работаю с программой и меняю значения, при следующем запуске значения уже другие - изменился ini-файл.
Вот я и думаю: есть ли компонент, обрабатывающий стандартным образом ini-файл или же сам пользователь обрабатывает его как обычный текстовый? Иначе говоря, могу ли я, не влезая в программу, инициализировать другие окошки, изменив ini-файл ?

Яуген Таляныч Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Яуген Таляныч (статус: Посетитель)
Вопрос отправлен: 11 апреля 2009, 10:01
Состояние вопроса: открыт, ответов: 2.

Ответ #1. Отвечает эксперт: min@y™

Цитата:

Иначе говоря, могу ли я, не влезая в программу, инициализировать другие окошки, изменив ini-файл ?

Есть всем известный класс TIniFile (или TMemIniFile) для чтения/записи параметров из/в ini-файл(а). Так что, если хочешь внести изменения, напиши свою программу, которая и будет вносить изменения в чужой ini.

Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 11 апреля 2009, 10:36

Ответ #2. Отвечает эксперт: Dron

Здравствуйте, Гена Гутницкий!
ini-файл - это обыкновенный текстовый файл, в чём вы можете легко убедиться, открыв его в том же Блокноте. Соответственно, и изменить любые параметры не составляет труда. Если не хотите, чтобы пользователь что-либо собственноручно менял, шифруйте сохраняемые данные.

Ответ отправил: Dron (статус: Студент)
Время отправки: 11 апреля 2009, 10:45


Мини-форум вопроса

Всего сообщений: 4; последнее сообщение — 17 апреля 2009, 01:21; участников в обсуждении: 2.
min@y™

min@y™ (статус: Доктор наук), 12 апреля 2009, 11:14 [#1]:

Цитата:


Внести изменения в ini не вопрос - действительно, текстовым редактором. Другое дело - если данное окно не преполагалось инициализировать значением и соответственно для него в ini нет ветви - то не трогая программу, можно что-то прописать в ini, чтобы начали ини-ться другие окошки? Странного хочу ?


Если в файле нету нужной ветви, её можно создать.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Яуген Таляныч

Яуген Таляныч (статус: Посетитель), 13 апреля 2009, 13:17 [#2]:

min@y {Если в файле нету нужной ветви, её можно создать.}
А это возможно, не имея исходника? Ведь я не знаю внутреннего имени этого окна, да и думаю, что оно исчезает на стадии компиляции.
min@y™

min@y™ (статус: Доктор наук), 13 апреля 2009, 15:45 [#3]:

Поработай с программой так, чтобы она проинициализировала все возможные данные и сохранила их в свой ini-файл. Скопируй его, открой и посмотри, какие настройки с какими именами там есть.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Яуген Таляныч

Яуген Таляныч (статус: Посетитель), 17 апреля 2009, 01:21 [#4]:

min@y {Поработай с программой так, чтобы она проинициализировала все возможные данные и сохранила их в свой ini-файл. Скопируй его, открой и посмотри, какие настройки с какими именами там есть.}
Пробовал, ничего хорошего не выходит. Там один Edit недоступен для ввода, пока не законнектишься с СОМ-портом. Но и когда это сделаю и выхожу из программы ( я полагаю, никаких других способов сохранить новые настройки, кроме выйди из пограммы, нет ) - сохраняются новые данные, но только в тех позициях, которые изначально были в .ini.
Похоже, придется поднапрячь извилины и написать самому прогу загрузки через COM.
Есть еще вопросы насчет try, но это уже в другой подраздел форума.

i

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:40
Выполнено за 0.03 сек.