|
FAQ Часто задаваемые вопросы |
14.10.2007, 11:14
|
#1
|
Нуждающийся
Регистрация: 21.07.2007
Сообщений: 93
Написано 7 полезных сообщений (для 13 пользователей)
|
Запись настроек программы в...
Люди, такой вопрос:
Как управлять записью стандартных файлов настройки твоей проги в телефоне, можно как-нибудь записать в них те данные, которые нужны тебе (т.е. нужная тебе инфа), возможно ли это сделать средствами MP, и возможно ли это сделать вообще (хотя на последний вопрос думаю - да - т.к. сам видел проги на MP, которые хранили в таких файлах нужную им инфу - dictophone, например)?
|
(Offline)
|
|
14.10.2007, 14:58
|
#2
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Запись настроек программы в...
Помоему про это написано здесь
|
(Offline)
|
|
14.10.2007, 15:42
|
#3
|
Нуждающийся
Регистрация: 21.07.2007
Сообщений: 93
Написано 7 полезных сообщений (для 13 пользователей)
|
Re: Запись настроек программы в...
Конечно спасибо за пример, но нельзя немного по-подробнее...
ЗЫ: Извиняюсь за эдакий флуд, но тему с примером в поисковике найти было практически нереально...
|
(Offline)
|
|
14.10.2007, 15:51
|
#4
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Запись настроек программы в...
Вообще работа с RecordStore неплохо описана в стандартном хелпе.
Прокоментирую на этом же примере:
program RS_x;
var
etext:integer;
rs:recordstore;//перененная для recordstore
buf:string;
cmok:command;
idx:integer;
cmexit,clicked:command;
begin
rs:=openrecordstore('TEXT');//открываем секцию базы данных с именем "TEXT"
showform;
etext:=formaddtextfield('Текст','',20,tf_any);
cmok:=createcommand('OK',cm_ok,0);
cmexit:=createcommand('EXIT',CM_EXIT,0);
addcommand(cmok);
addcommand(cmexit);
buf:=readrecordstoreentry(rs,1);//читаем запись с индексом 1
formsettext(etext,buf);
repeat
clicked:=getclickedcommand;
if clicked=cmok then
begin
if readrecordstoreentry(rs,1)='' then
//проверка существования записи
idx:=addrecordstoreentry(rs,formgettext(etext)) else
//добавление новой записи, возвращает индекс ячейки
modifyrecordstoreentry(rs,formgettext(etext),1);
//изменение данных в существующей ячейке номер 1 на
//текст из текстового поля etext
end;
until clicked=cmexit;
closerecordstore(rs);//закрываем базу данных
end.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
14.10.2007, 16:11
|
#5
|
Нуждающийся
Регистрация: 21.07.2007
Сообщений: 93
Написано 7 полезных сообщений (для 13 пользователей)
|
Re: Запись настроек программы в...
Спасибо еще раз... вообще насчет хелпа - после твоего первого поста сразу подумал туда заглянуть...
|
(Offline)
|
|
17.12.2007, 09:08
|
#6
|
Оператор ЭВМ
Регистрация: 15.12.2007
Сообщений: 34
Написано 2 полезных сообщений (для 2 пользователей)
|
Re: Запись настроек программы в...
Что то я немного не понял работу этих хранилищь...
к примеру есть приложение "Primer.jar"
к нему можносоздать N-ное количество хранилищь
Primer _a.rms
Primer _b.rms
Primer _c.rms
В каждом хранилище данные записываются под порядковыми номерами, то есть в Primer _a.rms данные можно записать как
[1]= a
[2]= b
[3]= c
Или я не правильно понял?
меня вообще интересует возможность создания и использования аналога *.ini файлов, где данные хранятся как ключ=значение.
[width]=240
|
(Offline)
|
|
17.12.2007, 09:43
|
#7
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Re: Запись настроек программы в...
Так это и есть почти ini-файл, только вместо имен ключей-их индексы.
В 4-м посте есть пример работы с RecordStrore.
Хотя в принципе, на базе RecordStore можно сделать полноценный аналог
ini-файла, если хранить имена ключей в специально созданном для этого хранилище, так, чтобы индекс записи с именем соответствовал индексу значения в том хранилище, где хранятся данные.
|
(Offline)
|
|
17.12.2007, 16:03
|
#8
|
Оператор ЭВМ
Регистрация: 15.12.2007
Сообщений: 34
Написано 2 полезных сообщений (для 2 пользователей)
|
Re: Запись настроек программы в...
А скажем, если требуется перенос настроек (допустим наработанных технологических параметров) с одного телефона на другой, чтоб не забивать все заново, тут нужно использовать уже внешнюю память? И как в ней доступ организован?
Из стандартных функций паскаля есть только доступ к внутренним ресурсам...там чтоние и запись данных нельзя делать в произвольном месте, все по порядку идет. - либо строками либо посимвольно. Это очень неудобно.
|
(Offline)
|
|
17.12.2007, 23:45
|
#9
|
Оптимист
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений (для 259 пользователей)
|
Re: Запись настроек программы в...
для этого есть библиотеки работы с файловой системой телефонов. там настройки можно сохранить в виде простого текстового файла.
например эта http://boolean.name/showthread.php?t=4927
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 14:14.
|