При добавлении таймера на схему с точки onInfo получаю удвоеное количество событий по отношению с количеством дисков
Build start...
Generated code
Create project...
Command line: dcc32.exe "C:\Program Files\HiAsm3.66 b169\Elements\delphi\code\Project6.dpr" "-U C:\Program Files\HiAsm3.66 b169\." -Q
Borland Delphi Version 12.0 Copyright (c) 1983,98 Inprise Corporation
KOLComObj.pas(1614) Hint: Value assigned to 'Status' never used
KOLComObj.pas(2337) Hint: Value assigned to 'SaveInitProc' never used
C:\Program Files\HiAsm3.66 b169\Elements\delphi\code\hiDebug.pas(25) Hint: Private symbol 'Execute' declared but never used
7539 lines, 0.08 seconds, 68260 bytes code, 2869 bytes data.
End build
code_9670.txt
Этот топик читают: Гость
Ответов: 5227
Рейтинг: 587
|
|||
карма: 4 |
| ||
файлы: 1 | code_9670.txt [564B] [297] |
Ответов: 3655
Рейтинг: 69
|
|||
andrestudio,
А зачем тебе первый таймер. |
|||
карма: 0 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Вячеслав, вложен это компонен далеко, событие onCreate от MainForm вообще в даун всю программу ложит, в дополнительном потоке этот компонент тоже не пашет, вобщем такая вот петрушка
|
|||
карма: 4 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
Не подтверждааеся, ни с таймером, ни с onCreate от MainForm
|
|||
карма: 22 |
| ||
файлы: 1 | diskinfo_001.png [3.2KB] [267] |
Ответов: 5227
Рейтинг: 587
|
|||
С той схемой которую выложил
|
|||
карма: 4 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
andrestudio писал(а): С той схемой которую выложилИменно. с той самой, даже debug не убирал |
|||
карма: 22 |
|
Ответов: 5227
Рейтинг: 587
|
|||
nesco, неудивительно, у тебя же всегда будущая версия
|
|||
карма: 4 |
|
Ответов: 3655
Рейтинг: 69
|
|||
Вообщем подтверждаю в стандаотной версии 169
два раза показывает. |
|||
карма: 0 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
Ааа, вы про таймер (а я про ошибки), то да, два раза (но не всегда), пока время не увеличил таймера до 2 сек -- надо учитывать время опроса
|
|||
карма: 22 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Заметил (поставил debug) что между таймером и doInfo происходит два события, если незадействованный таймер убрать то всё в норму приходит.
------------ Дoбавленo: nesco, а почему в отдельном потоке этот компонент неработает |
|||
карма: 4 |
|
Разработчик
Ответов: 26151
Рейтинг: 2127
|
|||
andrestudio писал(а): если незадействованный таймер убрать то всё в норму приходитСтранно, вообще-то -- вроде нет в таймере пересекающихся переменных, а мне показалось, что влияет время опроса ------------ Дoбавленo: andrestudio писал(а): а почему в отдельном потоке этот компонент неработаетЯ тоже заметил, но честно -- не знаю. Может кто из спецов подскажет, похоже, что Com-объекты в потоке не работает |
|||
карма: 22 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
В потоке не только этот, но и вся линейка WMI не работает. Проблемы с таймерами видимо из-за нарушения очередности сообщений в очереди - нельзя их менять из потока(а они меняются точкой doAdd элемента ListBox). Напомню, что WMI в процессе работы создает 3 потока, которые впоследствие закрепляются за приложением.
|
|||
карма: 27 |
|
Ответов: 3851
Рейтинг: 159
|
|||
Dilma писал(а): Напомню, что WMI в процессе работы создает 3 потока, которые впоследствие закрепляются за приложением. |
|||
карма: 0 |
|
Ответов: 5227
Рейтинг: 587
|
|||
вот поэтому я взял Drive v1.1 Author=Nazar, так как победить глюки мне неудалось
|
|||
карма: 4 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Андрей. писал(а): вот бы хелпик по этому в среду..для того, чтобы узнать сколько потоков использует приложение достаточно диспетчера задач с добавленным столбцом Thread Count |
|||
карма: 27 |
|