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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.02.2011, 20:12   #1
$T@LKER
Форумчанин
 
Аватар для $T@LKER
 
Регистрация: 28.03.2009
Сообщений: 393
Вопрос Постоянная активность программы

Возник вопрос! Я знаю что лучше бы организовать этот потоками но я не знаю с чего начать дабы правильно их внедрить в программу! Поэтому возникают два вопроса:

1) Как заставить программу полностью работать в отдельном потоке от ОС, то есть дабы работает в самой ОС прога не зависала и тому подобное в процессе обработки данных и т.д.

2) Если п.1 очень сложный то как сделать дабы в нужный момент программа всегда была поверх всех окон! Даже если Например Идет процес обработки данных например и в это времья перейти в браузер то как заставить прогу моментально всплыть поверх??
""Сериалы и компьютерные игры это словно вторая жизнь, которою ты проживаешь, во главе главного героя или персонажа, параллельно своей!""
$T@LKER вне форума Ответить с цитированием
Старый 25.02.2011, 20:26   #2
MotoArhangel
Пользователь
 
Регистрация: 25.02.2011
Сообщений: 51
По умолчанию

В пункте 2 нет ни какой сложности. Решается это несколькими строками. Подсказывать не буду т.к. больно уж подозрительные высказывания наталкивают на мысль о создание очередного вин лукера.
MotoArhangel вне форума Ответить с цитированием
Старый 25.02.2011, 20:30   #3
$T@LKER
Форумчанин
 
Аватар для $T@LKER
 
Регистрация: 28.03.2009
Сообщений: 393
По умолчанию

Цитата:
В пункте 2 нет ни какой сложности. Решается это несколькими строками. Подсказывать не буду т.к. больно уж подозрительные высказывания наталкивают на мысль о создание очередного вин лукера.
Какого еще Лукера)))!???

Прога уже давно написана)! И не каких целей плохи в ней нету просто ест ьтакой нюанс: ест ьв проге возможность обновлятся через интернет, для этого она качает с нег офайлы, из сервера ясное дело! Так вот мне нужно загать этот процес либо в поток(что сложно), либо заставить клиента ничег онеделать сикунд 30 макс 1 минуту пока вся инфа незагрузиться! В в чем суть п.2 если п.1 сложный! И все! Ничего страшного я непытаюсь зделать, а наоборот хочу свести к минимум зависание программы в такой момент вот.
""Сериалы и компьютерные игры это словно вторая жизнь, которою ты проживаешь, во главе главного героя или персонажа, параллельно своей!""
$T@LKER вне форума Ответить с цитированием
Старый 25.02.2011, 20:32   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

1) Непонял? У программы есть свой основной поток(в котором она работает) и ещё можно научить программу создавать свой Tthread поток в котором будут выполнятся какие-то действия одновременно с действиями в основном потоке.

Почитай про класс TThread.

2)
Поверх всех окон:
Код:
with форма do
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;
Отключение "поверх всех":
Код:
with форма do
SetWindowPos(Handle, HWND_NOTOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;
Человек_Борща вне форума Ответить с цитированием
Старый 25.02.2011, 20:39   #5
$T@LKER
Форумчанин
 
Аватар для $T@LKER
 
Регистрация: 28.03.2009
Сообщений: 393
По умолчанию

Цитата:
1) Непонял? У программы есть свой основной поток(в котором она работает) и ещё можно научить программу создавать свой Tthread поток в котором будут выполнятся какие-то действия одновременно с действиями в основном потоке.

Почитай про класс TThread.
Пробовал читать но там скока нюансов...та и пример обычный был например закцыкливания While в фонов режиме! А мне нужно по сути в поток отдельную форму загрузить на которой происходит много действий по взаимодествию с интернетом и импортом данных из файлов Экселя в БД Аксэс.

Цитата:
2)
Поверх всех окон:
Код:

with форма do
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;

Отключение "поверх всех":
Код:

with форма do
SetWindowPos(Handle, HWND_NOTOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;

Спасибо попробую что оно такое!
""Сериалы и компьютерные игры это словно вторая жизнь, которою ты проживаешь, во главе главного героя или персонажа, параллельно своей!""
$T@LKER вне форума Ответить с цитированием
Старый 25.02.2011, 20:45   #6
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Единственный минус потоков TTHread это неумение общаться с основным VCL потоком.

А в чем проблема?
Создай наследник потока со своими конструктором/деструкором и создавай форму в потоке далее там же можешь насоздовать ещё потоков и выводить на форму обработку данных, главное привильно все освободить.
Человек_Борща вне форума Ответить с цитированием
Старый 25.02.2011, 20:49   #7
$T@LKER
Форумчанин
 
Аватар для $T@LKER
 
Регистрация: 28.03.2009
Сообщений: 393
По умолчанию

В том то и дело что я с потоками толком неумею работать!(( Желание есть разобраться с ними тока нету нормального источника откуда можно почерпнуть информации полезную о них!

Цитата:
2)
Поверх всех окон:
Код:

Код:
with форма do
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;
Отключение "поверх всех":
Код:

with форма do
SetWindowPos(Handle, HWND_NOTOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
end;
Супер!!! Работает!!! Большое спасибо!!!

А в любой ОС Видоус пашет???
""Сериалы и компьютерные игры это словно вторая жизнь, которою ты проживаешь, во главе главного героя или персонажа, параллельно своей!""

Последний раз редактировалось Stilet; 25.02.2011 в 21:07.
$T@LKER вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Активность Кнопки daruwanov Win Api 2 09.09.2010 08:48
C#: Активность соединения Veiron Общие вопросы .NET 4 04.06.2009 23:10
Паранормальная активность Nemez Операционные системы общие вопросы 19 26.08.2008 14:45
Активность формы BanDit Общие вопросы Delphi 2 27.12.2007 21:40
Активность кнопки в БД alikon1 БД в Delphi 5 08.10.2007 17:21