Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Проблема с потоком / 6 сообщений из 6, страница 1 из 1
12.03.2005, 09:26
    #32957003
Гребенюк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с потоком
Дорогие однополчане, не в первый раз я прошу у Вас помощи, и вы помогали мне , так помогите и в этот.
Короче тема такая:

Создается и запускается поток:

Thred_Progress* Tre= new Thred_Progress(true);
Tre->Priority=tpNormal;
Tre->Resume();

далее уже в потоке мы делаем следующее:

void __fastcall Thred_Progress::Execute()
{
FreeOnTerminate=true;
zz->vivodtoExcel();
}
Где zz->vivodtoExcel(); это вывод в Excell данных ,
я даже пытался через Synchronize(конечно же zz->vivodtoExcel(); я выносил в отдельную функцию).
ТЕПЕРЬ САМОЕ ГЛАВНОЕ: Когда доходит до потока , кэтой функции (zz->vivodtoExcel()) или гдето внутри ее , выходит следующее сообщение:
(Заголовок )"Asserte"

InBound() @ C:\BCB\emuvd\utilds.h/4249
Press Yes to terminate, No to continio and Cansel to Depug

Как я заметил проц в этот момент занят на все 100% .
И конечно же напрашивается вопрос , как же мне осуществить вывод в Excel больших данных, что бы прога не подвешивалась и что у меня не так? Может поток не дружит с ActiveX?

без потока все работает.
Таких путей C:\BCB\emuvd\utilds.h/4249 у меня воще нет,
И может ли мне помочь слово CoInitialize, и как ?
...
Рейтинг: 0 / 0
12.03.2005, 09:51
    #32957012
Serega128
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с потоком
Если речь идёт о ВСВ5, то проблема была почти аналогичная, и решить не удалось(видимо нельзя в потоках с СОМ-объектами работать).

ИМХО: выводить в эксель надо не в потоке.
...
Рейтинг: 0 / 0
13.03.2005, 12:57
    #32957591
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с потоком
Этот ASSERT означает, что вылез баг в системных библиотеках BCB (что не удивительно при его бажности), такой путь существовал там, где Borland собирал библиотеки к компилятору.

И если можно приведите, что делает функция vivodtoExcel();, может быть ошибка в ней
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
13.03.2005, 21:13
    #32957760
Гребенюк
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с потоком
Ошибки в ней не могёт быть ибо под многими системами , без потока она работает. Поток заработал после вставок CoInitialize и CoUnInitialize, но правда форма словно замароженная, как будто без этого потока.
...
Рейтинг: 0 / 0
14.03.2005, 08:10
    #32957889
JibSkeart
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с потоком
ГребенюкОшибки в ней не могёт быть ибо под многими системами , без потока она работает. Поток заработал после вставок CoInitialize и CoUnInitialize, но правда форма словно замароженная, как будто без этого потока.
Ндык , если идет работа с СОМ , то это не нужно забывать .
...
Рейтинг: 0 / 0
14.03.2005, 15:14
    #32959001
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с потоком
А может ее замораживает какой-то код в реализации Vivodto.....?
Потому что поток вообще-то не должен влиять на обработку в главной форме
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Проблема с потоком / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]