Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.19;
Скачать: CL | DM;

Вниз

Можно ли редактировать INI файл проекта, находясь в этом проекте?   Найти похожие ветки 

 
КлЯкСа ©   (2006-11-04 12:17) [0]

Есть проект, который запускается по определенным параметрам, хранящимся в ffl.ini файле. Мне надо, чтоб продвинутые пользователи открыв проект смогли изменить (подредактировать этот файл) на следующий уже заход к примеру, чтоб не надо им было рассказывать, где этот файл лежит. Поскольку мне не приходилось вообще работать с ini файлом, здесь 2 вопроса - реально ли это в принципе осуществить или ситсема уже блокирует файл, когда проект загружен? И второй вопрос - как осуществить этот код без всяких заморочек, чтоб открывался файл по кнопке и при выходе просто был запрос сохранить ли внесенные изменения? (Я нашла в книге как новый файл записать, а как существующий уже обрабатывать - не знаю) Может направите на информацию где это взять или здесь кто приведет кодовый пример, плз.
Заранее спасибо!


 
Kolan ©   (2006-11-04 12:19) [1]

Ниасилил, многабукаф.

Для работы с Ini файлами есть класс TIniFile, который находится в модуле IniFiles.
А вот в справке(F1) есть описание как им пользоваться :)


 
Virgo_Style ©   (2006-11-04 12:27) [2]

КлЯкСа ©   (04.11.06 12:17)
И второй вопрос - как осуществить этот код без всяких заморочек, чтоб открывался файл по кнопке и при выходе просто был запрос сохранить ли внесенные изменения?


Свой редактор (Форма, TMemo + кнопки отмена и Ok) или запускать, скажем, Блокнот с параметром (если слегка извратиться, можно найти, с какой программой ассоциирован .txt и открыть там - вдруг кто-то удалит из системы Блокнот? =) )


 
MetalFan_pda   (2006-11-04 12:30) [3]

где там была ссылка по поводу smart questions?
автор,ты сама то поймешь,если свой вопрос перечитаешь?


 
Percent   (2006-11-04 13:08) [4]

Поскольку мне не приходилось вообще работать с ini файлом, здесь 2 вопроса - реально ли это в принципе осуществить или ситсема уже блокирует файл, когда проект загружен?

"Ситсема" блокирует файл, когда идет обращение к файлу (чтение/зпапись).
Если файл не открыт, то зачем системе его блокировать?
Откуда системе знать, какое отношение имеет твой ffl.ini к твоей пльограмме?

P. S. Какой компонент доступа к файлу?


 
КлЯкСа ©   (2006-11-04 14:54) [5]

To MetalFan_pda: Я перечитала то, что написала, признаю, что произошли некоторые опечатки, ;-) но в общем смысл понятен, если непонятно, переспросите что, я поясню :-)


 
КлЯкСа ©   (2006-11-04 14:57) [6]

To Percent: Мой первый вопрос и состоял как раз в том, что если я открываю проект в соответсвии с параментрами ffl.ini файла, то будет ли система его держать блокированным до тех пор, пока открыт этот проект?


 
КлЯкСа ©   (2006-11-04 15:12) [7]

To Virgo_Style: поскольку я чайник, и только пытаюсь начать работу, так что мои познания очень ограничены пока, а надо срочно решить эту проблему(задачу), так что мне бы поподробнее, плз, какие компоненты и приемы я должна использовать на форме, кроме подсказанной вами Tmemo? чтобы открыть, редактировать открытый в Мемо файл и сохранить введенные сохранения без использования компонента SaveDialog


 
Virgo_Style ©   (2006-11-04 15:31) [8]

0. Открываем окно-редактор
1. TMemo.LoadFromFile с параметром - именем ini-файла.
2а. если нажата Ok, то TMemo.SaveToFile и закрываем окно
2б. если нажата Отмена, то просто закрываем.

Всего делов.

Прим. к 1.:
Для получения полного пути к каталогу программы - ExtractFilePath( Appliaction.ExeName ) + "ffl.ini";
Если имя ini совпадает с именем Exe - то ChangeFileExt( Application.ExeName, ".ini");


 
КлЯкСа ©   (2006-11-04 15:40) [9]

Спасибо Virgo_Style, объяснение звучит понятно, буду пробовать :-)


 
Percent   (2006-11-04 15:59) [10]

что если я открываю проект в соответсвии с параментрами

Раз-два-три-четыре-пять... начинаю телепать.

Когда происходит чтение параметров из .ini файла? При старте программы.
Когда происходит запись параметров в .ini файл? При завершении программы.
Надо ли держать .ini файл открытым в течение всего сеанса работы программы? Не надо.
Когда надо открывать файл? В начале работы и в конце работы.

Вопрос: Будет ли файл заблокированным в течение всего сеанса, или только в момент чтения/записи данных, то есть, только в начале сеанса работы с программой, и в конце сеанса?


 
Desdechado ©   (2006-11-04 17:45) [11]

Я бы не делал редактирование ini напрямую как текста. Я бы сделал формочку, в которой нормальными компонентами можно было что-то настраивать, а программа бы сама перекладывала в INI настройки в том виде, в котором она понимает. Например, галочки командой WriteBool, циферки - WriteInteger и т.п.
Т.е. до кишок INI пользователя пускать нельзя, ему нужно дать возможность настроить с понятными интерфейсными решениями.


 
КлЯкСа ©   (2006-11-05 09:05) [12]

To Virgo_Style: я дико извиняюсь, но вот не смогла реализовать в жизнь то, что вы сказали, TMemo не обладает методом LoadFromFile :-(((
Какой компонент я должна использовать в этом случае вместо Memo? Или если я все же совет насчет Мемо годен, то как мне осуществить загрузку текстового файла в мемо кмпонент??


 
Ketmar ©   (2006-11-05 09:14) [13]

>[12] КлЯкСа(c) 5-Nov-2006, 09:05
а-а-а!!! говорящий помидор!!!


 
Virgo_Style ©   (2006-11-05 09:39) [14]

КлЯкСа ©   (05.11.06 9:05) [12]
TMemo не обладает методом LoadFromFile


Ну ошибся я, так надо ж если не книжки читать, то хотя бы обладать способностью к исследованию и чтению справки.

TMemo.Lines.LoadFromFile();
TMemo.Lines.SaveToFile();

Что вы, право...



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

Текущий архив: 2006.11.19;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.054 c
15-1162186108
IT_student
2006-10-30 08:28
2006.11.19
Текст по ИТ на английском


2-1162293434
Alral
2006-10-31 14:17
2006.11.19
Получение IP компьютера, подсоединившегося к серверу.


1-1160398467
CDfdfgf
2006-10-09 16:54
2006.11.19
Tms "xlsadapter" - что это?


8-1141656784
Belorus
2006-03-06 17:53
2006.11.19
Медиа плеер.


15-1162351507
Slider007
2006-11-01 06:25
2006.11.19
С днем рождения ! 1 ноября