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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.02.2008, 14:27   #11
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Блин, а подумать, в справку заглянуть, основы делфи почитать???

Прочесть всю секцию целиком
MyIni.ReadSection('ИМЯ_СЕКЦИИ', memo1.lines);

Прочитать только параметры с именем "LineX"
Код:
var s:string;
...
i:=1;

Repeat
s:=Ini.ReadString(‘СЕКЦИЯ’,’Line’+inttostr(i),'shit'));
if s<>'shit' then memo1.lines.add(s) else break;
inc(i)
Until false;
пыщь
JTG вне форума Ответить с цитированием
Старый 28.02.2008, 14:46   #12
aesoem
Форумчанин
 
Регистрация: 24.12.2007
Сообщений: 288
По умолчанию

ничего я непонял... Из этого кода я так понял мне нужено вот это действие:
var k:integer;
begin
i.ReadSection('Memo',ListBox1.Items );
//********* FOR ******************
for k :=0 to ListBox1.Items.Count-1 do
begin
ListBox1.Items[k]:=i.ReadString('Memo','Line '+inttostr(k),'');
end;
//******* END FOR ****************{}
end;

но чегот я несмог с ним нечиго сделать
aesoem вне форума Ответить с цитированием
Старый 28.02.2008, 15:06   #13
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Да сделай вот так и не мучайся

Код:
var s:string;   //строка для временного хранения данных
...   
i:=1;   //счётчик
  
Repeat   //цикл (вечный =)

s:=Ini.ReadString(‘СЕКЦИЯ’,’Line’+inttostr(i),'shit'));   
//читать секцию с именем "СЕКЦИЯ", параметр LineХ, если  
//прочитать не удалось (параметра нет) вернуть слово "shit"

if s<>'shit' then memo1.lines.add(s) else break;   
//если параметр прочитался - добавить в мемо, 
//если нет (ReadString возвратила слово "shit") выйти из цикла

inc(i)   
//если не вышли из цикла - увеличить значение счётчика,
//line+"1","2","3"...

Until false;
пыщь
JTG вне форума Ответить с цитированием
Старый 28.02.2008, 15:14   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ты пример мой читал внимательно?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.02.2008, 16:34   #15
aesoem
Форумчанин
 
Регистрация: 24.12.2007
Сообщений: 288
Смущение

Цитата:
Сообщение от JTG Посмотреть сообщение
Да сделай вот так и не мучайся

Код:
var s:string;   //строка для временного хранения данных
...   
i:=1;   //счётчик
  
Repeat   //цикл (вечный =)

s:=Ini.ReadString(‘СЕКЦИЯ’,’Line’+inttostr(i),'shit'));   
//читать секцию с именем "СЕКЦИЯ", параметр LineХ, если  
//прочитать не удалось (параметра нет) вернуть слово "shit"

if s<>'shit' then memo1.lines.add(s) else break;   
//если параметр прочитался - добавить в мемо, 
//если нет (ReadString возвратила слово "shit") выйти из цикла

inc(i)   
//если не вышли из цикла - увеличить значение счётчика,
//line+"1","2","3"...

Until false;
теперь программа вообще в ошибку вылетает!




Мне нужно прочитать секцию "Support Information" в ini файле c:\windows\system32\oeminfo.ini и всё что там есть (в этой секции) присвоить memo1.lines

Составьте полностью мне код для события TForm1.FormCreate
а я тогда сам разберусь, хорошо?
aesoem вне форума Ответить с цитированием
Старый 28.02.2008, 16:50   #16
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

[8 слов мата goes here]

Код:
procedure TForm1.Create(Sender: TObject);
var
  ini: TIniFile;
begin
  ini := TIniFile.Create('C:\Windows\System32\oeminfo.ini');
  try
    ini.ReadSection('Support Information', memo1.lines);
  //или  ini.ReadSectionValues('Support Information', memo1.lines);
  finally 
    ini.Free;  
  end;
end;
работать ДОЛЖНО.
За время проведённое на форуме можно было уже 50 раз перечитать хелп, там же есть примеры и на делфи и на си..
пыщь
JTG вне форума Ответить с цитированием
Старый 28.02.2008, 17:17   #17
aesoem
Форумчанин
 
Регистрация: 24.12.2007
Сообщений: 288
По умолчанию

Работает! Впрочем так работают и все предидущие примеры

мой код:
var
ini:Tinifile;
begin
ini:=Tinifile.Create('C:\WINDOWS\sy stem32\oeminfo.ini');
Edit1.Text:=ini.ReadString('General ','Manufacturer',Edit1.Text);
Edit2.Text:=ini.readString('General ','Model',Edit2.Text);
ini.ReadSectionValues('Support Information', memo1.lines);
ini.Free;
try
image1.Picture.LoadFromFile('C:\WIN DOWS\system32\OEMLOGO.BMP');
Statusbar1.Panels[0].Text:='Логотип и текстовая информация уже имеется';
except
Statusbar1.Panels[0].Text:='Логотип не найден';
end;
end;


вот ответ:
Изображения
Тип файла: jpg Безымянный.JPG (15.0 Кб, 143 просмотров)
aesoem вне форума Ответить с цитированием
Старый 29.02.2008, 20:52   #18
aesoem
Форумчанин
 
Регистрация: 24.12.2007
Сообщений: 288
По умолчанию

так что решения нет?
aesoem вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
memo1.lines как сделать....... diznt Помощь студентам 2 04.09.2008 17:13
Строка состаяния или загрузачная строка Sergeu Мультимедиа в Delphi 8 27.08.2008 10:32
отправить содержимое Memo1 на Memo2, по нажатии enter Патрон Общие вопросы Delphi 2 08.03.2008 07:18
Строка символов в виде байтов Blondinka Общие вопросы Delphi 17 14.09.2007 19:06
при достижении определённых значений в формуле должна происходить пульсация цифр или ячейки. vladi Microsoft Office Excel 3 08.04.2007 23:34