Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ускорение запуска программы [D7, XP]


Страницы:   1 2

DJ_UZer ©   (2008-06-19 21:03:00) 

Привет всем мастерам, пожалуйста подскажите, как можно укорить запуск программы?
Или хотя бы гляньте на код при создании формы, что я делаю не так? Уж а то слишком долго грузится..
procedure TForm1.FormCreate(Sender: TObject);
var
fi: TIniFile;
begin
Application.ProcessMessages;
b := true;
scp.ItemList.LoadFromFile(ExtractFilePath(Application.ExeName)+'\templ\autohelper.alu');

fi := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'Window.ini');
Form1.Top := fi.ReadInteger('Позиция', 'top', Form1.Top);
Form1.Left := fi.ReadInteger('Позиция', 'left', Form1.Left);
Form1.Panel2.Height := fi.ReadInteger('Позиция', 'Height', Form1.Panel2.Height);
Form1.Edit3.Text := fi.ReadString('Позиция', 'Прозрачность', Form1.Edit3.Text);
Form1.ComboBox1.ItemIndex := fi.ReadInteger('Позиция', 'Web', Form1.ComboBox1.ItemIndex);
Form1.se.Gutter.Color := fi.ReadInteger('Font', 'Фон панели', Form1.se.Gutter.Color);
Form1.se.Font.Color := fi.ReadInteger('Font', 'Цвет', Form1.se.Font.Color);
Form1.se.Font.Name := fi.ReadString('Font','Шрифт', Form1.se.Font.Name);
Form1.se.Font.Size := fi.ReadInteger('Font','Размер', Form1.se.Font.Size);
Form1.se.Color := fi.ReadInteger('Font', 'Фон редактора', Form1.se.Color);
Form1.se.Gutter.Font.Color := fi.ReadInteger('Font', 'Фон пан. редактора', Form1.se.Gutter.Font.Color);
Form1.se.RightEdge := fi.ReadInteger('Font','Отступ линии', Form1.se.RightEdge);
Form1.se.RightEdgeColor := fi.ReadInteger('Font', 'Цвет линии', Form1.se.RightEdgeColor);
Form1.se.SelectedColor.Foreground := fi.ReadInteger('Font', 'Цвет выделенного', Form1.se.SelectedColor.Foreground);
Form1.se.SelectedColor.Background := fi.ReadInteger('Font', 'Фон выделенного', Form1.se.SelectedColor.Background);
Form1.se.ActiveLineColor := fi.ReadInteger('Font', 'Цвет активной', Form1.se.ActiveLineColor);
Form1.se.MaxUndo := fi.ReadInteger('Font', 'Max Undo', Form1.se.MaxUndo);
Form1.se.WordWrap := fi.ReadBool('Font', 'Перенос', Form1.se.WordWrap);
Form1.fled.Text := fi.ReadString('Font', 'FileName Open/Save', Form1.fled.Text);
Form1.sb.Visible := fi.ReadBool('Font', 'sb.Visible', Form1.sb.Visible);
Form1.se.Gutter.Visible := fi.ReadBool('Font', 'se.Gutter.Visible', Form1.se.Gutter.Visible);
Form1.se.Gutter.ShowLineNumbers := fi.ReadBool('Font', 'Gutter.ShowLineNumbers', Form1.se.Gutter.ShowLineNumbers);
Form1.se.Gutter.ZeroStart := fi.ReadBool('Font', 'Gutter.ZeroStart', Form1.se.Gutter.ZeroStart);
Form1.se.BookMarkOptions.EnableKeys := fi.ReadBool('Font', 'sb.BookMarkOptions.EnableKeys', Form1.se.BookMarkOptions.EnableKeys);
Form1.se.BookMarkOptions.GlyphsVisible := fi.ReadBool('Font', 'BookMarkOptions.GlyphsVisible', Form1.se.BookMarkOptions.GlyphsVisible);
Form1.acrAutoCorrect.Enabled := fi.ReadBool('Font', 'acrAutoCorrect.Enabled', Form1.acrAutoCorrect.Enabled);
Form1.Panel1.Visible := fi.ReadBool('Font', 'Panel1.Visible', Form1.Panel1.Visible);
Form1.CheckBox10.Checked := fi.ReadBool('Font', 'CheckBox10.Checked', Form1.CheckBox10.Checked);
Form1.panel2.Visible := fi.ReadBool('Font', 'panel2.Visible', Form1.panel2.Visible);
Form1.CheckBox12.Checked := fi.ReadBool('Font', 'CheckBox12.Checked', Form1.CheckBox12.Checked);
Form1.ToolButton30.Visible := fi.ReadBool('Font', 'b1.Checked', Form1.ToolButton30.Visible);
Form1.ToolButton9.Visible := fi.ReadBool('Font', 'b2.Checked', Form1.ToolButton9.Visible);
Form1.CheckBox13.Checked := fi.ReadBool('Font', 'CheckBox13.Checked', Form1.CheckBox13.Checked);
Form1.sb.Visible := fi.ReadBool('Font', 'sb.Visible', Form1.sb.Visible);
Form1.edit1.Text := fi.ReadString('Font', 'edit1.Text', Form1.edit1.Text);
//Form1.N100.Checked := fi.ReadBool('Font', 'Checked1', Form1.N100.Checked);
//Form1.N102.Checked := fi.ReadBool('Font', 'Checked2', Form1.N102.Checked);
//Form1.N103.Checked := fi.ReadBool('Font', 'Checked3', Form1.N103.Checked);
Form1.sh.ItemIndex := fi.ReadInteger('Шаблон', 'Номер', Form1.sh.ItemIndex);
Form1.edit2.Text := fi.ReadString('Браузер', '1', Form1.edit2.Text);
Form1.edit4.Text := fi.ReadString('Браузер', '2', Form1.edit4.Text);
n := fi.ReadInteger('Popul', 'pl', n);
n := n + 1;
fi.WriteInteger('Popul', 'pl', n);
fi.Destroy;

 { Load from registry. }
 form1.acrAutoCorrect.LoadFromRegistry(HKEY_CURRENT_USER,
   'Software\Aerodynamica\Components\SynAutoCorrect\OLU');

op.InitialDir := ExtractFilePath(ParamStr(0));
sd.InitialDir := op.InitialDir;
Button1.Click;

If ComboBox1.ItemIndex = 0 then begin
If form1.Panel2.Width < form1.Panel2.Height then
form1.Panel2.Height := form1.Panel2.Width;
form1.Panel2.Align := alBottom;
form1.Splitter1.Align := alBottom;
form1.web.Align := alClient;
end;
If ComboBox1.ItemIndex = 1 then begin
If form1.Panel2.Width < form1.Panel2.Height then
form1.Panel2.Height := form1.Panel2.Width;
form1.Panel2.Align := alTop;
form1.Splitter1.Align := alTop;
form1.web.Align := alClient;
end;
If ComboBox1.ItemIndex = 2 then begin
If form1.Panel2.Width > form1.Panel2.Height then
form1.Panel2.Width := form1.Panel2.Height;
form1.Splitter1.Align := alLeft;
form1.Panel2.Align := alLeft;
form1.web.Align := alClient;
end;
If ComboBox1.ItemIndex = 3 then begin
If form1.Panel2.Width > form1.Panel2.Height then
form1.Panel2.Width := form1.Panel2.Height;
form1.Panel2.Align := alRight;
form1.Splitter1.Align := alRight;
form1.web.Align := alClient;
end;
   
If (ParamCount = 0) and (CheckBox10.Checked = true) then begin
If form1.sh.ItemIndex = 0 then html1.Click;
If form1.sh.ItemIndex = 1 then CSS1.Click;
If form1.sh.ItemIndex = 2 then JavaScript2.Click;
If form1.sh.ItemIndex = 3 then php2.Click;
If form1.sh.ItemIndex = 4 then perl2.Click;
end
else
N77.Click;

form1.WindowState := wsMaximized;
end;


palva   (2008-06-19 21:52:00) [21]


> Какая именно строка долго выполняется?

Вот эта:
Application.ProcessMessages;


Правильный-Вася   (2008-06-19 21:45:00) [22]

мамма мия!
зачем везде Form1 писать?
Application.ProcessMessages в начале нафиг не надо

код форматировать не учили?


Anatoly Podgoretsky   (2008-06-19 21:20:00) [23]

> DJ_UZer  (19.06.2008 21:03:00)  [0]

Какая именно строка долго выполняется?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо