Форум: "Начинающим";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];
ВнизМожно ли редактировать 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;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.046 c