Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> 2 процедуры одновременно 
:(
    Опции темы
MaGICaN
Дата 5.8.2007, 18:10 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 20.7.2007

Репутация: нет
Всего: нет



Подскажите как реализовать:
1 Процедура работает, но ее выполнение было приостановлено виндой(вылезло окошко с вариантами ок и отмена, как нажать на кнопку я знаю), как сделать так, чтобы автоматом вкючилась другая процедура, выполнив свой код, первая процедура продалжила работу.

Пример:
(1 процедура)Прога долна копировать файл, она начинает его копировать но тут вылазит окошко ок и отмена теперь нада чтобы выполнилась другая процедура, и закончив свое выполнение вторая процедура заставила продолжать выполнение первой процедуры.
PM MAIL   Вверх
Yanis
Дата 5.8.2007, 18:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 6
Всего: 111





--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
W1zArD
Дата 5.8.2007, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 29.1.2006

Репутация: нет
Всего: 3



потоки?
да скорее всего...
tthread-потоки-многопоточность

если что-то не свяжется... кидай в пм.. попробую реализовать =)

Это сообщение отредактировал(а) W1zArD - 5.8.2007, 20:55
PM   Вверх
ALeXandrK
  Дата 5.8.2007, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 342
Регистрация: 31.1.2007
Где: Санкт-Петербург

Репутация: 1
Всего: 6



А обычные условные переходы здесь неприменимы????
Вопрос неполностью раскрыл суть твоей проблемы! Очень поверхностно! smile 


--------------------
Богат не/ни тот, у кого много, а тот, кому хватает
PM WWW   Вверх
Демо
Дата 5.8.2007, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 7
Всего: 50



Цитата(MaGICaN @  5.8.2007,  18:10 Найти цитируемый пост)
но тут вылазит окошко ок и отмена


Окно диалоговое из-за ошибки появляется?
Если да, то используй обработку исключений.


--------------------
    
PM MAIL ICQ Skype   Вверх
Sunvas
Дата 6.8.2007, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 2
Всего: 89



Цитата(MaGICaN @  5.8.2007,  18:10 Найти цитируемый пост)
но ее выполнение было приостановлено виндой

Лучше этого не допускать, а сразу договориться с системой чтобы не ты ей, не она тебе не портила жизнь. Ты же знаешь на какой строке твоего кода винда начинает мессаги выдавать? Ты как файл копируешь?


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
MaGICaN
Дата 7.8.2007, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 20.7.2007

Репутация: нет
Всего: нет



пожалуйстя, кому не лень покажите пожалуйста примерный код одновременного выполнения двух процедур.
спасибо

Это сообщение отредактировал(а) MaGICaN - 7.8.2007, 21:57
PM MAIL   Вверх
W4FhLF
Дата 8.8.2007, 07:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 1
Всего: 121



Код

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure ReceiveMessage (var Msg: TMessage); message WM_USER+$100;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  add,i:integer;
  ThID: dword;
  const WM_FINISH = WM_USER+$100;
implementation

{$R *.dfm}

function ThreadProc(): dword; stdcall;
begin
    for i:=0 to 600000000 do add:=i;
    PostMessage(Form1.Handle,WM_FINISH,0,0);
end;

procedure TForm1.ReceiveMessage (var Msg: TMessage);
begin
    ShowMessage(IntToStr(add));
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
    ThID:=CreateThread(nil,128*1024,@ThreadProc,nil,0,ThID);
end;




--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
dumb
Дата 8.8.2007, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 3
Всего: 158



Цитата(W4FhLF @  8.8.2007,  07:20 Найти цитируемый пост)
ThID:=CreateThread(nil,128*1024,@ThreadProc,nil,0,ThID);
+CloseHandle(ThID); smile

а вообще, лучше юзать TThread или BeginThread, иначе IsMultiThread руками в true ставить и хэндлы закрывать...
PM MAIL   Вверх
W4FhLF
Дата 8.8.2007, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 1
Всего: 121



Цитата(dumb @  8.8.2007,  11:36 Найти цитируемый пост)
+CloseHandle(ThID);


Тата, простите, как я мог smile smile

Это сообщение отредактировал(а) W4FhLF - 8.8.2007, 11:40


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
MaGICaN
Дата 8.8.2007, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 25
Регистрация: 20.7.2007

Репутация: нет
Всего: нет



а где сами процедуры то писать?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0818 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.