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

Вниз

Увеличение скорость открытия программы.   Найти похожие ветки 

 
Merry   (2006-09-28 09:33) [0]

При запуске программы, происходит задержка от 5 до 30 сек (на разных компах по-разному)до момента открытия программы. В момент открытия основной формы все таблицы и запросы закрыты, обращения к ним нет. Вообще, форм, таблиц и запросов в программе много. Таблицы db-формата. (Те программы, где таблиц и запросов меньше открываются за 2 сек). В программе формируются отчёты, выполненные в QReporte. Причём замечено, если используется принтер, подключенный к другому компьютеру, а на этом компьютере принтера нет, то время открытия программы дольше. Может быть тут какая-то связь?


 
Elen ©   (2006-09-28 09:44) [1]


> Merry

Как вариант создавай QReport и формируй отчеты в ДЛЛ или другом приложении. Пусть оно запускается потом (по желанию пользователя)


 
Ketmar ©   (2006-09-28 09:46) [2]

ну глянь ты в исходники QREport"а, и выясни. а лучше -- возьми нечто нормальное, а не это чудо. %-)


 
zdm ©   (2006-09-28 09:46) [3]

в QR врядли проблема. Как вариант пробегись пошагово по проге, и посмотри, точно-ли не происходит коннекта к БД или попытки сформировать отчет до действий юзера


 
zdm ©   (2006-09-28 09:47) [4]

FastReport форева


 
Плохиш ©   (2006-09-28 11:28) [5]


> Merry   (28.09.06 09:33)

Для начала надо убрать все ненужные формы/репорты из автосоздания и создавать их по мере необходимости.


 
Merry   (2006-09-28 21:27) [6]

Спасибо за советы.
Не понятно, что значит:
>Плохиш ©   (28.09.06 11:28) [5] :Для начала надо убрать все ненужные формы/репорты из автосоздания и создавать их по мере необходимости.

Что такое автосоздание? Естественно, каждая форма и любой отчёт формируется только в момент нажатия пользователем определённой клавиши. Формы вызываю Forma1.ShowModal;
Отчёты Qreport1.Preview.
Всё же, я думаю, что дело не в QReporte. И таблицы я открываю не в момент открытия проги, и запросы тоже. Может, недостаточно оперативки свободной или чего-то ещё???


 
Ketmar ©   (2006-09-28 21:30) [7]

"формируется" и "создаётся" -- вещи разные. загляни в .dpr -- там куча создавалок? или создаёшь (Create) формы в рантайме, показываешь, и тут же убиваешь, когда они больше не нужны?


 
Merry   (2006-09-28 21:49) [8]

Нет. Не создаю в реальном времени.
Вызываю Forma1.ShowModal; и закрываю close.


 
Ketmar ©   (2006-09-28 21:50) [9]

тогда создавай. у тебя при старте программы создаётся куча форм и компонентов на них. зачем? память загромождают, а толку -- никакого.


 
Merry   (2006-09-28 21:54) [10]

t.e. вместо Forma1.ShowModal
пишу Forma1.Create.
А как " убиваешь, когда они больше не нужны?"


 
Ketmar ©   (2006-09-28 21:55) [11]

не надо нобум. лучше сначала почитай статейки.


 
RASkov   (2006-09-29 00:51) [12]

В меню Delphi "Project"->"Options" или Shift+Ctrl+F11
Оставляешь в Auto-create только главную форму, остальные в Available forms
Ну и по мере надобности создаешь и вызываешь так
...
if Form1=nil then Form1:=TForm1.Create(Self);
Form1.ShoModal;
Form1.Free;
Form1:=nil;
//или вместо последних двух строк кода можно одну - FreeAndNil(Form1);
....

это для модальных окон, для не модальных можно попробывать так

....
if Form2=nil then Form2:=TForm2.Create(Self);
Form2.Show;
....

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 Action:=caFree; Form2:=nil;
end;



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

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

Наверх




Память: 0.49 MB
Время: 0.048 c
15-1161788868
nordic3
2006-10-25 19:07
2006.11.12
Операции над двоичными числами


11-1136632952
Thaddy
2006-01-07 14:22
2006.11.12
D2005 and D2006 and KOL


15-1161764920
Rentgen
2006-10-25 12:28
2006.11.12
Proxy server на Delphi/BC++


15-1161763445
Иксик
2006-10-25 12:04
2006.11.12
Кто-нибудь ставил icq с Internet Explorer 7.0?


2-1161841281
XTD
2006-10-26 09:41
2006.11.12
Посоветуйте хорошую компоненту по работе с *.DBF базами.